美文网首页
Vue组件高级通讯--篇4--sync属性修饰符

Vue组件高级通讯--篇4--sync属性修饰符

作者: 扶得一人醉如苏沐晨 | 来源:发表于2023-04-27 10:27 被阅读0次

一、sync属性修饰符

属性修饰符.sync,可以实现父子数据同步。
多在elementUI组件中出现,实现父子数据同步。

二、作用

下面看两个例子

2.1、不使用sync修改符实现父子数据同步

父组件

<template>
  <div>
    小明的爸爸现在有{{ money }}元
    <h2>不使用sync修改符</h2>
    <Child :money="money" @update:money="money = $event"></Child>  //:money是父组件给子组件传递的props,@update是子组件绑定的自定义事件只不过名字叫做update:money,可以实现父子组件数据同步
  </div>
</template>
<script>
import Child from './Child.vue'
export default {
  data() {
    return {
      money: 10000
    }
  },
  components: {
    Child,
  }
}
</script>

子组件:

<template>
  <div style="background: #ccc; height: 50px;">
    <span>小明每次花100元</span>
    <button @click="$emit('update:money',money - 100)">花钱</button>
    爸爸还剩 {{money}} 元
  </div>
</template>

<script type="text/ecmascript-6">
  export default {
    name: 'Child',
    props:['money']
  }
</script>

二、使用sync

父组件

<template>
  <div>
    小明的爸爸现在有{{ money }}元
    <h2>不使用sync修改符</h2>
    <Child :money="money" @update:money="money = $event"></Child>
    <h2>使用sync修改符</h2>
    <Child :money.sync="money"></Child>
    <hr />
  </div>
</template>
<script>
import Child from './Child.vue'
export default {
  name: 'SyncTest',
  data() {
    return {
      money: 10000
    }
  },
  components: {
    Child
  }
}
</script>

子组件代码同上

money.sync含义:

父组件给子组件传递了一个props叫money
给当前子组件绑定了一个自定义事件,而且事件的名称即为update:money

相关文章

  • vue - 学习笔记

    环境变量与模式 设置 基础 过滤器 观察属性 计算属性 表单绑定 表单修饰符 组件 路由 vue-router 事...

  • Vue兄弟组件通信(VueX)

    在vue里,组件之间的作用域是独立的,父组件跟子组件之间的通讯可以通过prop属性来传参,但是在兄弟组件之间通讯就...

  • 面试题总结--vue

    1-vue优点 易学易用、双向数据绑定、组件化、虚拟dom、渐进式 2-组件通讯 父传子:通过属性向子组件...

  • .sync修饰符及MVVM

    .sync修饰符 父组件 子组件 vue的数据响应式

  • Vue3.x 父子通讯

    在Vue3中进行父子的通讯,原理和Vue2做法差不多 1.父组件向子组件传递数据:自定义属性props 2.子组件...

  • Vue3.x 父子通讯

    在Vue3中进行父子的通讯,原理和Vue2做法差不多 1.父组件向子组件传递数据:自定义属性props 2.子组件...

  • vue页面和component组件之间双向通讯(续1)

    VUE中父组件、子组件之间的双向通讯可以参见笔者的《vue页面和component组件之间双向通讯[https:/...

  • vue-bus实现兄弟组件通讯

    一、为什么要使用vue-bus? 学习vue的开发者都知道,父子组件的直接的通讯直接使用vue提供的props属性...

  • vue组件之高级属性

    1.插槽 组件定义了外部样式,里面内容想要调用的时候再放 插槽用法: 具名插槽: 作用域插槽: 通过$ref获取的...

  • Vuex 模块化实现待办事项的状态管理

    前言 在vue里,组件之间的作用域是独立的,父组件跟子组件之间的通讯可以通过prop属性来传参,但是在兄弟组件之间...

网友评论

      本文标题:Vue组件高级通讯--篇4--sync属性修饰符

      本文链接:https://www.haomeiwen.com/subject/tcbbjdtx.html