Vue 组件传值

发布于 2021-12-08 12:44:58 字数 1008 浏览 1142 评论 0

1. props 方式传值

如果在子组件对传递的属性进行了赋值

  • 将会导致 Vue 警告抛出;
  • 子组件中的引用修改不会同步到父组件,修改引用对象中的属性会同步到父组件。

2. sync 语法

https://vuejs.org/v2/guide/components-custom-events.html

在 Vue2.0 鼓励使用事件来同步父子组件的内容改动

// parent component

data(){
  return {
    title: "222"
  }
}
<h3>{{title}}</h3>
<ChildComponent @update:title="title=$event"></ChildComponent>
// child component

<h3>{{title}}</h3>
<button @click="$emit('update:title', '666')"></button>

初始状态,parent/child component 展示都是 222,点击按钮,子组件同步了 666 的值给父组件,父子组件都变成了 666。

注意:并没有直接在子组件中修改 title,而是触发 update,然后再由父组件自上而下地同步。

其中父组件的写法等价于下面的sync写法(注:跟 Vue 1.0 中的 sync 完全不同):

<ChildComponent :title.sync="title"></ChildComponent>

当组件之间同步的是对象的时候,也可以用同样的语法,那么所有的对象中的属性都会被同步。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

平生欢

暂无简介

0 文章
0 评论
591 人气
更多

推荐作者

末蓝

文章 0 评论 0

年少掌心

文章 0 评论 0

党海生

文章 0 评论 0

飞翔的企鹅

文章 0 评论 0

鹿港小镇

文章 0 评论 0

wookoon

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文