1、组件的使用注意点。
1.1 组件在页面内引入时不能放在有条件判断的地方,否则在js里的onReady里获取组件时undefined。再调用组件里面的方法时会报错。
1.2 组件内需要一进入页面就调用接口且接口参数是页面内js传过来的时,页面内的接口调用在onReady里面执行,然后在回调里面调用组件内调用接口的方法。例子:
onReady(){ this.footer = this.selectComponent("#footer"); this.getTypeListData() }, getTypeListData(){ ... //res为接口返回值 this.footer.checkAtten(res.residentialId) }
值需以参数的形式传过去,若使用组件传属性值时在组件内的onReady里调用checkAtten时,在安卓手机上属性值此时还为undefined。
1.3 每次页面展示时都需要调用组件内的checkAtten方法时,可在组件的使用如下代码:
pageLifetimes: { show: function() { this.checkAtten() // 组件所在的页面被展示时触发 }, hide: function() { // 组件所在的页面被隐藏时触发 } }
2、智能小程序的审核团队会审核低版本的库,这会导致部分属性不能用从而导致页面加载出错而审核不通过,比如
2.1 video在低版本库里不能用
2.2 在低版本库里组件内onLoad里面如果调用methods里的方法,此方法的this会指向methods。解决方案,我是将methods里那个方法的代码复制到onload里面执行。
2.3 在低版本库里组件内的pageLifetimes内是show,hide方法不触发。
3.若要使用本地图片作为背景图片,请使用background-image。使用background不生效的