用front page2003做网站的导航条,手机照片做成音乐相册,wordpress怎么保持缩略图尺寸不变,大连网站开发培训班一、父子组件之间通信的3种方式
1、属性绑定
用于父组件向子组件的只当属性设置数据#xff0c;但只能设置JSON兼容的数据
2、事件绑定
用于子组件向父组件传递数据#xff0c;可以传递任意数据
3、获取组件实例
父组件还可以通过this.select Component()获取子组件的实…一、父子组件之间通信的3种方式
1、属性绑定
用于父组件向子组件的只当属性设置数据但只能设置JSON兼容的数据
2、事件绑定
用于子组件向父组件传递数据可以传递任意数据
3、获取组件实例
父组件还可以通过this.select Component()获取子组件的实例对象这可直接访问子组件的任意数据和方法
二、属性绑定
属性绑定用于实现父向子传值而且只能传递普通类型的数据无法将方法传递给子组件
示例
1、先创建一个组件test5在component文件目录下
2、在wxml文件中进行属性绑定
home.wxml文件中父组件的中count值
test5 count{{count}}/test5
view父组件中count的值是{{count}}/view
//test5.js文件中指定count的类型
properties:{count:Number
}
test5.wxml文件中count的值并实现子组件count值自增view子组件中count的值是{{count}}/view
button bindtapaddcount1/button
test.js文件中,实现自增
methods:{addcount(){this.setData({count:this.properties.count1
})
}}
会发现count自增并没有同步到父组件当中这里我们要用到事件绑定事件。
三、事件绑定
用于子组件向父组件传递数据可以传递任意数据。
使用步骤如下
在父组件的js中定义一个函数这个函数即将通过自定义事件的形式传递给子组件 //home.js文件中syncCount(e){console.log(e)
}) 在父组件的wxml中通过自定义时间的形式将步骤1定义的函数引用传递给子组件 home.wxml文件中父组件的中count值
test5 count{{count}} bind:syncsyncCount/test5
view父组件中count的值是{{count}}/view 在子组件的js文件中调用this.triggerEvent(‘自定义事件的名称,{/*参数对象*/}),将数据发送到父组件 test.js文件中,实现自增,触发自定义事件将数值同步给父组件
methods:{addcount(){this.setData({count:this.properties.count1
})this.triggerEvent(sync,{value:this.properties.count})
}} 在父组件的js中通过e.detail获取到子组件传递过来的数据 //home.js文件中syncCount(e){this.setData({
count:e.detail.value
}) 四、获取组件实例
可在父组件里调用this.selectComponent(id或者class选择器)获取子组件的实例对象从而直接访问子组件的任意数据和方法调用时需要传入一个选择器。
home.wxml文件
test5 count{{count}} bind:syncsyncCount classcustom idcA /test5
button bindtapgetChild获取子组件实例/button
//home.js文件中
getChild(){const child this.selectComponent(custom)
child.setData({count:child.properties.count1})
child.addCount()
},