ng-options を使用して複数の select-element を生成しようとしていて、いくつかのアイテムを事前に選択したいと考えています。データベースから事前に選択された項目をオブジェクトの配列として取得します。それは、選択可能なものを構築するための私の HTML マークアップです。
<select ng-model="currentAppointment.services" ng-options="value.id as value.name group by value.group for value in servicegroups"></select>
currentAppointment.services 変数は、現在選択されているオブジェクトを保持します。サービスグループでは、それらはすべて選択可能な項目であり、REST サービスから取得します。サービスグループの JSON は次のようになります。
[
{
"id": 0,
"name": "Test1"
"price": 20.0
},
{
"id": 1,
"name": "Test2"
}
]
そして currentAppointment JSON:
{
"_id": "1001",
"title" : "test",
"services": [
{
"id": 0,
"name": "Test1"
"price": 20.0
}
]
}
select-element は正しく作成されています。ただし、ID 0 のサービス オブジェクトは事前に選択されていません。問題は、Angular が通常のオブジェクトを angularjs Resource-object と比較するため、オブジェクトが等しくないことです。代わりに、オブジェクトを ID で比較する必要があります。しかし、独自のディレクティブをコーディングせずにどうすればそれを達成できますか?