vue的bug?触发vue数据响应解决方案

vue数据响应篇

注意事项

我们在业务中经常出现,代表列表某个属性值的时候,列表没有变化,数据没有响应更新,由于 JavaScript 的限制,Vue 不能检测以下变动的数组:

  1. 当你利用索引直接设置一个项时,例如:vm.items[indexOfItem] = newValue
  2. 当你修改数组的长度时,例如:vm.items.length = newLength
我们一般的处理方式:
// Vue.set
Vue.set(vm.items, indexOfItem, newValue)
// Array.prototype.splice
vm.items.splice(indexOfItem, 1, newValue)

当修改我们的子组件需要同步父组件显示的数据时,采用用如下方案:

给子组件的输入框绑定监听事件,监听时间内保存数据,传递到父组件

  onAutoUpDate (v) {
      this.$emit('set-update')
  },