Vue父子模版传值及组件传值的三种方法

时间:2021-05-26

这里是针对于vue1.0,如果要学2.0,建议大家去看官方文档

vue2.0 http://vuefe.cn/guide/

vue-router2.0https://router.vuejs.org/zh-cn/essentials/getting-started.html

第一种

<div id="example"> <my-component></my-component></div><script src="../node_modules/vue/dist/vue.js"></script><script> //向子组件传递数据 //省略extend方法,vue内部调用 Vue.component('my-component', { //模板里不支持驼峰的属性写法,需要转换为‘-'连接的属性写法 data:function(){ return{ parentMsg: '雨歇微凉' } }, template: '<div>' +'<input v-model="parentMsg">' +'<br>' +'<child-component :my-message="parentMsg"></child-component>' +'</div>', components: { 'child-component': { props: ['myMessage'], template: '<div>{{myMessage}}</div>' } } }); // 创建根实例1 new Vue({ el: '#example' });</script>

有什么疑惑的,也可以去查官网的文档,prop传值,这里也可以直接拷去试,如果你有什么更好的简介,还希望能够拿出来分享。

第二种

<div id="example"> <my-component></my-component></div><script src="../node_modules/vue/dist/vue.js"></script><script> //向子组件传递数据 //省略extend方法,vue内部调用 Vue.component('my-component', { data:function(){ return { name:'xiaoming', age:20 } }, //模板里不支持驼峰的属性写法,需要转换为‘-'连接的属性写法 template: '<div >{{name}}Parent</div><child1-component v-bind:msg-name="name"></child1-component>', components: { 'child1-component': { // 声明 props props: ['msgName'], template: '<div>A child-111111 component!{{msgName}}</div>' } } }); // 创建根实例1 new Vue({ el: '#example' });</script>

第三种

<div id="example"> <my-component></my-component></div><script src="../node_modules/vue/dist/vue.js"></script><script> //向子组件传递数据 //省略extend方法,vue内部调用 Vue.component('my-component', { data:function(){ return { name:'xiaoming', age:20 } }, //模板里不支持驼峰的属性写法,需要转换为‘-'连接的属性写法 template: '<div >{{name}}Parent</div><child1-component some="1 + 1"></child1-component><child2-component :some="1 + 3"></child2-component>', components: { 'child1-component': { // 声明 props props: ['some'], template: '<div>{{some}}</div>', ready:function(){ console.log(this.some) } }, 'child2-component': { // 声明 props props: ['some'], template: '<div>{{some}}</div>', ready:function(){ console.log(this.some) } } } }); // 创建根实例1 new Vue({ el: '#example' });</script>

这个例子主要是说明带冒号和不带冒号的区别,不带冒号就是一个字符串死值,带冒号会到父模版的data中去寻找值的具体内容。

总结

以上所述是小编给大家介绍的Vue父子模版传值及组件传值的三种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章