为什么我的微信小程序 窗口背景色backgroundColor设置参数 无效的问题处理记录!

文章讲述了在微信小程序开发中,开发者可能会遇到在json中设置backgroundColor不显示的问题,因为这实际上是窗体背景而非页面背景。解决方法是在wxss中自定义页面背景颜色。作者提醒开发者注意这种设置上的差异,以避免误解和困扰。

当我们在微信小程序 json 中设置 backgroundColor 时,实际在电脑的模拟器中根本看不到效果。
在这里插入图片描述
这是因为 backgroundColor 指的窗体背景颜色,而不是页面的背景颜色,即窗体下拉刷新或上拉加载时露出的背景。在电脑的模拟器中是看不到这个动作的,所以会让人误以为这个配置是无效的。
如果要设置页面背景颜色,得在 wxss 中自定义样式,如下:
在这里插入图片描述

page {
    background-color: #590E09;
}

效果变化
在这里插入图片描述

巨坑啊,微信小程序 json 中设置 backgroundColor颜色给人一种误导,本次问题解决,希望能帮助遇到同样问题的朋友,学好无涯,与君共勉!

在uniapp开发的微信小程序中,动态设置背景色可以通过不同场景来实现。 ### 动态设置导航栏背景色 可以在页面的`onLoad`生命周期函数中使用`uni.setNavigationBarColor`方法来动态设置导航栏的背景色。示例代码如下: ```javascript onLoad() { uni.setNavigationBarColor({ frontColor: '#000000', // 设置前景颜色为黑色 backgroundColor: '#FFFFFF', // 设置导航栏背景颜色为白色 animation: { duration: 400, timingFunc: 'easeIn' } }); } ``` 这里的`backgroundColor`参数可以根据需求动态修改,实现导航栏背景色的动态设置。此方法在引用[3]中有相关体现。 ### 动态设置页面背景色 在页面的样式中,可以通过数据绑定的方式动态设置页面的背景色。 ```vue <template> <view :style="{ backgroundColor: bgColor }"> <!-- 页面内容 --> </view> </template> <script> export default { data() { return { bgColor: '#FFFFFF' }; }, methods: { changeBgColor() { this.bgColor = '#FF0000'; } } }; </script> ``` 在上述代码中,通过`data`中的`bgColor`变量绑定到`view`的`backgroundColor`样式上,然后在方法中可以动态修改`bgColor`的值,从而实现页面背景色的动态设置。 ### 动态设置全局背景色 可以通过修改`pages.json`中的`globalStyle`里的`backgroundColor`来设置全局背景色。不过要动态修改,需要结合本地存储等方式。例如,在某个事件触发时修改本地存储的值,然后在程序启动时读取该值并设置全局背景色。 ```javascript // 修改本地存储的值 uni.setStorageSync('bgColor', '#FF0000'); // 在App.vue中读取并设置全局背景色 onLaunch() { const bgColor = uni.getStorageSync('bgColor'); if (bgColor) { uni.setNavigationBarColor({ frontColor: '#000000', backgroundColor: bgColor }); } } ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java000I

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值