时间:2021-07-01 10:21:17 帮助过:17人阅读
本文介绍了vue.js $refs和$emit 父子组件交互的方法,分享给大家,废话不多说直接看代码:
<strong>父调子 $refs (把父组件的数据传给子组件) </strong><br><br><template> <p id="app"> <input type="button" name="" id="" @click="parentCall" value="父调子" /> <hello ref="chil" />//hello组件 </p> </template> <script> import hello from './components/Hello' export default { name: 'app', 'components': { hello }, methods: { parentCall () { this.$refs.chil.chilFn('我是父元素传过来的') } } } </script> /*Hello.vue :*/ <template> <p class="hello"></p> </template> <script> export default { name: 'hello', 'methods': { chilFn (msg) { alert(msg) } } } </script>
<strong>子调父 $emit (把子组件的数据传给父组件)</strong> //ps:App.vue 父组件 //Hello.vue 子组件 <!--App.vue :--> <template> <p id="app"> <hello @newNodeEvent="parentLisen" /> </p> </template> <script> import hello from './components/Hello' export default { name: 'app', 'components': { hello }, methods: { parentLisen(evtValue) { //evtValue 是子组件传过来的值 alert(evtValue) } } } </script> <!--Hello.vue :--> <template> <p class="hello"> <input type="button" name="" id="" @click="chilCall()" value="子调父" /> </p> </template> <script> export default { name: 'hello', 'methods': { chilCall(pars) { this.$emit('newNodeEvent', '我是子元素传过来的') } } } </script>
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
有关于JavaScript使用中Object值如何合并
在Angular中如何实现验证
在Angular中如何实现table表格排序
在Vue中有关于localstorage和sessionstorage如何使用
以上就是利用vue.js如何实现$refs和$emit 父子组件交互的详细内容,更多请关注Gxl网其它相关文章!