手机版

Vue.js实战组件间数据传输

时间:2021-09-05 来源:互联网 编辑:宝哥软件园 浏览:

Vue的组件范围是隔离的,不允许直接引用子组件模板中父组件的数据。必须使用特定的方法来实现组件之间的数据传输。

首先,用vue-cli创建一个项目,其中App.vue是父组件,components文件夹中充满了子组件。

首先,父组件将数据传输给子组件

在Vue中,可以使用道具将数据传递给子组件。

子组件部分:

这是header.vue的HTML部分,logo是数据中定义的变量。

如果需要从父组件中获取logo的值,则需要使用prop :[' logo ']

父组件零件:

调用组件时,使用v-bind将logo的值绑定到App.vue中定义的变量logoMsg

然后可以将App.vue中的logoMsg值传递给header.vue:

其次,子组件将数据传输到父组件

子组件主要通过事件将数据传递给父组件

子组件部分:

这是login.vue的HTML部分,当输入的值改变时,用户名被传递给App.vue

首先,声明一个方法setUser,并用change事件调用setUser

在setUser中,$emit用于遍历transferUser事件并返回这个

TransferUser是一个用户定义的事件,其功能类似于转移。this.username将通过此事件传递给父组件

父组件零件:

在父组件App.vue中,声明了一个方法getUser,并使用transferUser事件调用getUser方法来获取从子组件传递的参数username

getUser方法中的参数消息是从子组件传递的参数用户名

第三,子组件向子组件传输数据

Vue没有直接从子代传递参数的方法,建议将所有需要传递数据的子组件组合成一个组件。如果必须将参数从子组件传递给子组件,则可以将其从传递给父组件,然后再传递给子组件。

为了方便开发,Vue引入了状态管理工具Vuex,可以方便地在组件之间传递参数

摘要

以上就是本文的全部内容。希望本文的内容能给你的学习或工作带来一些帮助。有问题可以留言交流。谢谢你的支持。

版权声明:Vue.js实战组件间数据传输是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。