在git命令行下,执行以下命令完成环境的搭建:
1,npm install --global vue-cli 安装vue命令行工具
2,vue init webpack vue-demo 使用vue命令生成一个webpack项目,项目名称为vue-demo
3,cd vue-demo 切入项目
4,npm install安装package.json中的所有依赖包
5,npm run dev运行项目
一、父组件向子组件传递数据
然后删除默认的Hello.vue组件,把App.vue整理成以下样子:
export default new Router({
routes: [
{
path: '/',}
]
})
1、在components目录下创建一个子组件Child.vue
代码如下:
这是子组件
{{content}}
2、把App.vue的代码修改如下:
这样就完成了父组件通过props属性向子组件传递数据
也可以用v-bind绑定属性
小结:
子组件在props中创建一个属性,用以接收父组件传过来的值
父组件中调用子组件
把需要传给子组件的值赋给该属性,如我们上文中父组件的msg
二、子组件向父组件传递数据
1,把Child.vue修改如下:
这是子组件
{{content}}
子组件通过$emit发送一个自定义的事件ParentRecEv, 后面参数是内容
2,App.vue修改如下
{{data}}
在第二个子组件监听事件ParentRecEv,当子组件点击按钮就会触发这个自定义事件,然后触发showMsg函数,就能收到子组件传递的数据,没有绑定自定义事件是不能收到子组件发送的信息的.
小结:
子组件中通过$emit触发一个自定义事件
将需要传的值作为$emit的第二个参数,该值会被父组件的方法接收到
他们的共同点就是有桥梁,子向父的桥梁是自定义事件$emit,父向子的桥梁是props中的属性. 这就是他们之间传递数据的关键
以上这篇Vue2.0基于vue-cli+webpack父子组件通信(实例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。
原文链接:https://www.f2er.com/vue/36435.html