3-9 双向绑定的问题

来源:3-9 Vue的组件之自定义双向绑定

慕沐1264973

2018-10-25

老师我想问一下,我的我有两个input
一个绑定的是value,另一个绑定是abc
我父级组件只传了value的值,为什么页面渲染后,两个input都有值
而且第二个input里是value的值
图片描述

代码如下

const component = {
  model: {
    prop: 'abc',
    event: 'change'
  },
  props: ['value', 'abc'],
  template: `
    <div>
      <input type="text" @input="inputHandler" :value="value">
      <input type="text" @input="inputChangeHandler" :value="abc">
    </div>
  `,
  methods: {
    inputHandler (e) {
      this.$emit('input', e.target.value)
    },
    inputChangeHandler (e) {
      this.$emit('change', e.target.value)
    }
  }
}

new Vue({
  el: '#root',
  data () {
    return {
      value: '123',
      abc: '345'
    }
  },
  components: {
    CompOne: component
  },
  template: `
    <div>
      <comp-one :value="value" v-model="value"></comp-one>
    </div>
  `
})
写回答

1回答

Jokcy

2018-10-29

你自定义了v-model绑定了吧?你v-model绑定的是abc

0
0

Vue核心技术 Vue+Vue-Router+Vuex+SSR实战精讲

深入讲解Vue核心技术,展示Vue应用开发中的各种问题和解决方案

3168 学习 · 853 问题

查看课程