elementUI的級聯選擇器el-cascader去動態更改disabeld,遇到數據不及時更新的問題


問題:
  1,項目開發過程中,使用場景是一個接口,返回的數據在主辦部門和協辦部門的級聯選擇器中展示。選擇主辦部門的任一項后,協辦部門不能再選擇,即(disabled = true)
  但是在選擇了主辦部門,用主辦部門的change事件打印出來數組,協辦部門中的disabled都是正常賦值上去,同時主辦部門也默認賦值了disabled屬性
  2,解決了上一個問題后,在主辦部門下拉事件完成選擇任一個值后,el-cascader卻沒有隨着主辦部門的更改,讓協辦部門disabled置灰。打印了數據是正常的,並且在循環中用$set更新了數據,可是選擇器中數據還是沒有改變
 
解決:
  1. 將接口返回的res用兩個不同的對象賦值給主辦部門和協辦部門, 並且在賦值的時候,將主辦部門 = JSON.parse(JSON.stringify(res.data)), 協辦部門則在循環中默認添加一個disabeld = false的屬性,為下面的動態賦值做准備
  
  2. 在默認獲取值得時候,需要在協辦部門得數據上,默認將disabeld設置一個初始值,才能在后面的$set中使用。
  主辦部門change事件中,在循環中,判斷主辦部門的item.id是否與協辦部門的值id相同,若相同則=true, 不相同為false,最后在循環中用$set()去更新數據
      

 

 

  tips: 如果不在獲取協辦部門的默認值上將disabled設置一個初始值,使用截圖中隱藏的那句話也是管用,具體原理我也不太懂,望理解的人能指點一二。
 
 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM