赞
踩
父子组件间通信
ref 获取 DOM 元素 和 组件
路由
<div id="app"> <!--父组件,可以在引用子组件的时候,通过 属性绑定(v-bind:) 的形式,把需要 传递给子组件 的数据,以属性绑定的形式,传递到子组件内部,供子组件使用--> <com1 v-bind:parentmsg="msg"></com1> </div> <script> let vm = new Vue({ el: '#app', data: { msg: '123 父组件中的数据' }, methods: { }, components: { com1: { //props中的数据,都是只读的,无法重新赋值。 props: ['parentmsg'],//把父组件传递过来的 parentmsg 属性,先在 props 数组中,先定义一下,这样才能使用这个数据 template: '<h1>这是子组件---{ {parentmsg}}</h1>' } } }) </script>
<div id="app"> <com1 @func="show"></com1> </div> <template id="tmp1"> <div> <h1>这是子组件</h1> <button @click="myclick">这是子组件的中的按钮</button> </div> </template> <script> let com2 = { template: '#tmp1', methods: { myclick() { // emit 英文原意:是触发,调用,发射的意思 this.$emit('func') } } } let vm = new Vue({ el: '#app', data: { }, methods: { show() { console.log('调用父组件身上的show方法') } }, components: { com1: com2 } }) </script>
<div id="app"> <com1 @func="show"></com1> </div> <template id="tmp1"> <div> <h1>这是子组件</h1> <button @click="myclick">这是子组件的中的按钮</button> </div> </template> <script> let com2 = { template: '#tmp1', data () { return { list: [{ 'id': '1', 'age': '18'}] } }, methods: { myclick() { // emit 英文原意:是触发,调用,发射的意思 this.$emit('func', this.list) } } } let vm = new Vue({ el: '#app', data: { }, methods: { show(data)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。