ng 中select的ngModel如何綁定一個對象(根據對象中的某個屬性)


在ng中select的ngModel雙向綁定某個變量,如果這個變量是一個基本數據類型,雙向綁定沒有問題。但是在實際項目中很多情況下都是要根據這個select獲取到一個對象的,如果ngModel直接綁定一個對象就會出問題,代碼如下圖

 

 

 

 效果如下圖

 

我們發現雖然person已經給了默認值,但是選擇框並沒有默認選擇項。其實這個也很好理解,js中對象這種復雜數據類型是不可以直接拿來做比較的,這種比較是比較的對象的指向,所以雖然兩個對象看着數據是一樣的,但是它們並不是相等的。

在ng的表單select中提供了一個compareWith屬性,這個屬性的值是一個比較函數,可以讓我們利用對象中的某個屬性做對比,代碼如下圖

 

 

 

 此時就可以根據person中的id做匹配了,效果如下

 


免責聲明!

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



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