最近使用element-ui中的日期选择组件,发现选中日期却没有回显出来,但是提交到后台的日期数据却是正确的,即数据变了,视图没变。

经过反复查找,终于发现问题出在给实例对象增加新属性时,直接通过 ‘=’形式赋值是不会触发视图更新的,应该使用Vue.set给实例对象添加新属性。

例如:

this.modeForm.validDate = [ response.startDate, response.endDate]

this.modeForm是已经创建的实例对象,通过= 创建新属性,不会触发视图更新;

更改为:

Vue.set(this.modeForm,   'validDate ', [ response.startDate, response.endDate] )

参数一:需要添加属性的对象

参数二:新增属性名

参数三:  新增属性值

 

Logo

前往低代码交流专区

更多推荐