elementui 日期时间选择器时间赋值后台时间后,点击无法更改

需求是这样的:
数据渲染表格,表格里每行都有一个“编辑”按钮,点击拿到当前点击行的信息,并弹窗展示该行信息,并可编辑,其中有一项就是有效期,该项用到element ui 的日期时间选择器,type设置为datetimerange,但是!给日期时间控件添加了当前行内的日期后,点击重新更改日期,model是拿到最新值了,view没有拿到,点击确定后展示的还是旧的值,看了一些参考文章,得出代码:

html:

<el-date-picker
	v-model="templateList.rangedate" 
	type="datetimerange" 
	range-separator="至" 
	start-placeholder="开始日期"
	end-placeholder="结束日期">
</el-date-picker>

js:

this.$set(this.templateList,'rangedate',[this.templateList.effectiveTime,this.templateList.expiryTime]);

后台返回了两个值(2022/01/01 12:54:12 和 2022/12/12 01:02:03):分别存在templateList.beginTime和templateList.endTime中,而日期时间选择器赋值需要是一个数组,所以将他们存在templateList.rangedate(这是一个数组)中。
但是直接给this.templateList.rangedate赋值,用this.templateList.rangedate = [templateList.expiryTime , templateList.effectiveTime]的话,model更新了,但是view未能检测到数据的变化(至于为什么没检测到还有点不太清楚-。-),所以这时候就需要用到$set,赋值,并触发更新视图。
完美解决。

参考文章:https://www.jianshu.com/p/920c5d54fa66

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值