总结下个人开发中遇到的问题
1、定时器清除遇图片上传预览
定时器进入新页面不会清除,所以要在onHide方法里面清除,但遇当前页面需要上传图片,上传图片时也会执行onHide,定时器在当前页就被清除了,所以我在跳转的时候wx.navigateto方法之后再清除定时器,或者在onUnload方法中
2、setNavigationBarColor API
wx.setNavigationBarColor可以设置标题文字颜色(frontColor)和背景色(backgroundColor),设置颜色我一般喜欢简写,因为简写也是代码优化的一点,所以我就踩坑了。
总结:frontColor不能简写,比如#000,并且区分大小写,这里是不能大写,比如#FFFFFF,但是backgroundColor简写、大小写都没问题
3、ui框架
如果使用的是ui框架的组件标签,该标签上面不能添加class,如果需要class需在外再包一层原生标签,class加到原生标签上。
4、canvas层级过高问题
项目中有echarts,需要用到canvas,但有弹出层时弹出层无法覆盖canvas,z-index样式、cover-view标签、canvas2d属性都无法解决。思路:但弹层弹出时将不显示canvas,将canvas转化为图片显示图片,实现方式暂略。
5、图片
用原生的开发的时候背景图好像不能用本地的,需要线上图片,image标签src可以直接用本地图片路径。
用uni app开发背景图好像可以用本地路径,image标签src不可以直接用本地图片路径,需先在页面requrie或important后用变量。
6、http路径
接口-request、socket、uploadFile、downloadFile等域名需要https(线上硬要求,并且需要在公众号上申请的appid配置域名地址,只有配置的域名才能正常使用),开发工具上可以设置勾选不校验合法域名(右上角-详情-本地设置),在真机上打开调试模式就可以正常使用http域名。
7、scroll-view标签
1、父标签不能设置position:absolute;
2、scroll-view不能设置display:flex。
3、scroll-view无法实现锚点定位
解决方法:
8、icon小图标
上方多出空白。
解决方案:
9、input框
被分为两个部分。
解决方案:在input:after上设置样式,例:
10、button按钮
有灰色边框。
解决方案:在button:after设置样式,例:{border:0/none/#fff}
点击有背景色(navigator也有这个问题)
解决方案:一种是在页面标签上设置hover-class=“none”,或者自定义设置的class名。另一种就是给点击后添加的class自定义样式.button-hover,.navigator-hover{ background-color:inherit; /opacity: inherit;color:inherit;/}
11、fixed bottom
底部有自定义fixed内容时页面无法滚动(在web页面上也一样,具体还有没有其他原因造成不滚动没确认)
解决方案:页面padding-bottom尽量多出来一点,让页面出现滚动条。