v-model & sync

94 阅读1分钟

 <!-- 
  父子传值
   props与emit
   父传子(父传子属性)
      son   属性名=值
       值如果是原始值(Number,String,Boolean,null,undefined,Symbol)不可(子组件)修改
       值如果是引用值(Object,Array,Function)只要不修改它的引用地址(栈),它的值还是随便修改的
       堆可以修改,栈不可修改


   子传父(子触发父方法)
      1:在子组件标签上绑定一个方法  
      子组件  @子组件方法名='父组件方法'
      2:子组件内触发父组件方法
       this.$emit('子组件方法名',实参值)


   v-model:用于双向绑定
      子组件标签  :value="父组件的变量"  @input="(str)=>{父组件的变量=str}"
      子组件标签  v-model="父组件的变量"
      默认情况下  v-model对应的属性名叫value,对应的绑定的方法名input,这个可以在子组件内配制修改
      子组件内  model:{prop:"value",event:'input'}可以修改prop与event


    .sync修饰符
       子组件标签  :属性名="父组件变量"  @update:属性名="(str)=>{父组件变量=str}"
       子组件标签  :属性名.sync="父组件变量"  
       子组件内  props:['属性名']    this.$emit('pdate:属性名',实参值)
 -->