template:
<el-form-item label="有效時間:" prop="validTime">
<el-date-picker v-model="ruleForm.validTime" style="width:60%" value-format="yyyy-MM-dd" type="daterange" range-separator="至" start-placeholder="開始日期" end-placeholder="結束日期"></el-date-picker>
</el-form-item>
// 由於 validTime 綁定了 ruleFrom 表單,出於某種博主也不知道的原因,導致了 數據可以更改,但是 前端 頁面顯示不出來的。 ( 這里是純粹的前端問題,和后端沒有任何關系。 )
原先賦值是這樣賦值的: this.ruleForm.validTime = [res.data.coupon.start_time,res.data.coupon.end_time]
// 數據這樣可以改變,但是前端頁面顯示的數據不會改變, 實際上內部已經發生了變化,可能是 由於是 懶加載的原因,所以導致了數據不會顯示出來。
更改后的結果賦值是這樣的: this.$set(this.ruleForm,"validTime",[res.data.coupon.start_time,res.data.coupon.end_time])
// 采用了 vue 特有的 Vue.set 來強制改變賦值狀態,在 vue 中,由於底層實現原理的特性,導致了 vue 不能用 set 和 delete, 所以 vue 推出了 vue.set 和 vue.delete 方法來進行 賦值 和 刪除。