element from表单个别select 出现 一开始就校验了数据,且有数据还通不过校验,选中的项叉不掉问题。
問題1: element from表單個別select 出現 一開始就校驗了數據,且有數據還通不過校驗。
前提條件: 校驗規則都設置正確,都設置prop rules等情況下出現這個問題。
下面是我設置的規則校驗:
出現原因: 在頁面數據回顯時的數據賦值方式不正確導致的(不一定是這個位置賦值導致的,也有可能是其他地方賦值導致的)。
解決辦法: 給深層次對象賦值時,使用this.$set來賦值。
拿這個courses來說原本是 this.list.courseTimes = [...autoCourseTimes]; 這樣賦值的,改成在this.$set(this.list, 'courses', [...autoCourseResources]);使用這種方式賦值。
問題2:選中的項叉不掉問題。
也是像上面那種賦值方式導致的。雖然可以使用$forceUpdate()強行刷新視圖,但是這樣處理是不正確的,在一些特定極端場景下會有問題,治標不治本。
另外關于問題2: 假如由于業務需要將某個數據還原初始狀態值/清空該值,不要亂設置值,把他設置成在data中定義的初始值就好了,這個也是非常重要,有可能在特定極端場景下導致未知問題。
總結:以上都是由于不正確賦值導致的, 在給深層次對象賦值時,使用this.$set來賦值。
總結
以上是生活随笔為你收集整理的element from表单个别select 出现 一开始就校验了数据,且有数据还通不过校验,选中的项叉不掉问题。的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 期货夜盘几点到几点,需要根据品种确定
- 下一篇: vue3 封装文件上传组件