<el-dialog title="拆单" :visible.sync="dialog_split">
    <div v-for="(item, i) in split_goods_json" >
        <el-input v-model="split_goods_json[i].split_number" style="width: 150px;">
        </el-input>
    </div>
</el-dialog>

但是在方法中更新数据不会重新渲染,其实这个问题的本质也不是dialog的问题,而是vue的机制问题,

https://cn.vuejs.org/v2/guide/reactivity.html

Vue 不能检测以下数组的变动

当你利用索引直接设置一个数组项时,例如:vm.items[indexOfItem] = newValue

当你修改数组的长度时,例如:vm.items.length = newLength

为了解决第一类问题,以下两种方式都可以实现和 vm.items[indexOfItem] = newValue 相同的效果,同时也将在响应式系统内触发状态更新:

// Vue.set
Vue.set(vm.items, indexOfItem, newValue)
// Array.prototype.splice
vm.items.splice(indexOfItem, 1, newValue)