v-model和sync修饰符

  场景:  vue

  在用vue开发的过程当中咱们常常会遇到父子组件共用同一变量的状况,那么在这种状况下,咱们确定会想直接 把变量传过来用,由于是双向绑定的因此子组件就会修改这个变量,这样在vue中时会报错的。双向绑定

  问题:  作用域

  对于这种问题,咱们就能够在父组件中用v-model或者是用一个属性加上sync修饰符并在子组件使用$emit('input',v)或者$emit('x:update',v)来解决,可是这两个东西到底有什么区别呢?开发

  结论:  input

  我的认为二者只是语法上的区别,以此来实现两个组件之间数据的双向绑定,sync更加灵活一点,若是是v-model的话在子组件就只能用value来接这个参数了,而sync可随意it

  延伸:  模板

  官方有哦说道:组件实例的做用域是独立的,这意味着不能(也不应)在子组件的模板内引用父组件的数据,父组件的数据须要通多prop才能下发到子组件中。变量

相关文章
相关标签/搜索