業(yè)務需求: 表單el-form 有一表單項:發(fā)布時間 ,有5個選項:今天、24小時、近3天、近7天和自定義時間,其中當選擇自定義時間時,后面跟著的日期時間選擇器是必填的,選中其他選項時則不需要。這就需要做到表單的動態(tài)檢驗。
最開始實現(xiàn)方式是在當前表單項中設置規(guī)則rules,根據(jù)時間類型來設置時間選擇器的required與否來實現(xiàn)是否必選。
但是這種實現(xiàn)方式在我的業(yè)務場景中存在一種問題:
我的是左側有可點擊的列表項,每個列表項對應的發(fā)布時間可能不同,每次點擊不同的列表項時會對應填充右側的發(fā)布時間選項,然后查詢數(shù)據(jù)顯示在頁面中間部分。
在第一次填充是必填后,再切換其他列表項,若是非必填,然而表單查詢校驗卻還是提示發(fā)布時間是必填,感覺就是動態(tài)校驗并沒有立刻生效。通過百度,大致理解就是,這種寫法并不是響應式的,雖然改變了rules的內容,form表單沒有變動,頁面沒有重修渲染,真正的檢驗規(guī)則其實也不會更新并生效。
如有理解不對,還請指正。文章來源:http://www.zghlxwxcb.cn/news/detail-665581.html
可生效的實現(xiàn)方式:
1、直接在computed中定義相應的rules返回。是響應式的。
2、使用this.$set()方法來動態(tài)觸發(fā)視圖更新,從而達到重新渲染,重新加載校驗規(guī)則文章來源地址http://www.zghlxwxcb.cn/news/detail-665581.html
到了這里,關于Vue+Element-UI el-form表單動態(tài)檢驗的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!