我们在使用自定义组件时,在“pages”内的js文件中定义参数的值,通过wxml传递数据,在组件的“Component”内的“properties”中定义格式并接收参数,这是最基本的做法。
但这种做法不适用于异步请求,通过wx.request拿到的数据,无法在组件的“Component”内“properties”中用常规方法接收到参数,可以理解为:当异步拿到数据时,组件已经在小程序内完成初始化,所以此时参数变成了无效操作。
解决方法:
在自定义组件内通过observers数据监听器接收参数,observers数据监听器可以用于监听和响应任何数据字段的变化。
使用前提:
1、小程序基础库版本 2.6.1 开始支持
2、只能在自定义组件中使用,在页面中无法使用
使用方法:
1、在自定义组件的properties中的使用
此处监听父组件传过来的数据,如果发生变化,会引起该子组件数据变动,并重新渲染
2、Component内的属性(与properties同一层级)
放在这个位置,可监听当前子组件内data、props内数据的变动。" ** "为通配符,可监听所有数据的变动