最近都在开发微信小程序,所以总结以下我最近遇到的一些问题,希望对大家能有些帮助
1、wepy组件之前传参只能传递整个数据,不能传递某个对象中的某个值。
2、在真机上请求接口没反应,必须开启调试模式才行的问题,这是因为请求域名未加入微信小程序设置的域名中,到微信小程序管理上添加域名即可。
3、input数据无法直接双向绑定,需要利用input的bindinput事件进行赋值,如果是在wx:for中使用,可以利用data-name=‘’做标记。
4、mothods中只定义事件方法,如果需要this.调用的方法需要写在和methods同级。
5、组件遍历使用在父组件中必须使用<repeat>或者<block>标签。
6、wepy中使用wx:if 方法,只会阻止视图渲染,并不会阻止组件初始化。
如果在子组件onLoad 生命周期或者计算属性中使用了一些父级传递过来的动态数据,就会报错
7、小程序里修改data 里面的属性或者赋值都需要利用this.setdata()而wepy 基本就是利用this.属性即可。如果是异步返回或者更新dom需要this.$apply()触发脏值检测,频繁使用this.$apply()会影响性能。
8、组件component 没有 onLoad 等页面事件
页面中设置好this.$broadcast('someEvent',option);
组件监听事件则可以解决。
9、微信小程序ios 图标请求服务器拼接地址无法显示问题:src的地址初始化设置为null,有数据时再显示即可。
10、微信小程序iOS时间初始化问题,无法识别-:time.replace(/-/g,"/")。
11、重新定义小程序的返回按钮
onUnload(){
this.usid = '';
this.$apply();
this.gotoHomePage();
}
// 在订单详情 点击小程序的返回 自定其他跳页方法
gotoHomePage(){//自定义页面跳转方法
wx.switchTab({
url: '/pages/personal/index',
});
}
12、JS的内置函数(encodeURIComponent();decodeURI())实现中文与URI间的转换