uniapp为page设置背景色不生效 & lang=“scss“ scoped的page样式失效,uniapp重复打开页面

文章讨论了uniapp在不同平台下,使用scoped的page选择器样式失效的问题及解决方案,即为page选择器单独设置无scoped的style。同时,针对app启动时因未登录导致的多页面跳转问题,提出了使用uni.redirectTo代替uni.navigateTo来避免页面堆积。
摘要由CSDN通过智能技术生成

一、lang="scss" scoped中的page选择器的样式失效

在用uniapp生成网页和H5时有效,但生成小程序或者app时无效。这是因为page选择器在小程序和app编译中是页面的父节点,所以加上scoped限定后,会导致无法选中。详细了解请移步源码。

解决办法就是给 page 选择器,单独设置一个 style,去掉scoped就行。

<style lang="scss">
	page {
		background-color: $uni-bg-color-theme;
	}
</style>

<style lang="scss" scoped>
	page {
		// background-color: $uni-bg-color-theme;
	}
    。。。其它样式。。。
</style>

参考文献:uniapp 在style添加了scoped后 page 选择器失效_追格小程序,圈子小程序,知识付费小程序,企业官网小程序,WordPress主题模板

二、uniapp生成的app启动时,多个请求都因为未登录,转至登录页面,使其多次打开

这是因为函数异步执行,和跳转后没有关闭上一页面导致的。

					//这个跳转会保留当前页
					// uni.navigateTo({
					// 	url: "/pages/login/login"
					// })
					uni.redirectTo({
						url:"/pages/login/login"
					})
					//这个是单线程,类似异步,在等待时,代码会继续向下执行
					// setTimeout(() => {
					// 	uni.navigateTo({
					// 		url: "/pages/login/login"
					// 	})
					// }, 1000)

参考文献:

关于setTimeout()是同步还是异步的问题?到详谈Event Loop - 简书

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值