select с ng-options не отображает выбранный элемент

94
20 января 2022, 01:30

модель списка такая:

tarifs = [{_id:{$oid:"5e03f33472222f1f4a91af45"}, name: "новый" }, ...]

HTML такая

<select class="form-control"
ng-model="router.tarif" ng-options="t._id as t.name for t in tarifs track by t._id.$oid">
  <option value="">-нет-</option>
</select>

Модель сохраняю и в базу оно сохраняется как нужно, но вот получаю я обратно из базы

{"response": {"_id": "test2", .... , "tarif": {"$oid": "5e03f33472222f1f4a91af45"}}, "total": null}

Кидаю ответ в модель и получаю новый элемент списка без метки.

"angular": "^1.6", обновил до 1.7

Проблема в том что:

> {"$oid": "5e03f33472222f1f4a91af45"} == {"$oid": "5e03f33472222f1f4a91af45"}
< false

и track by не работает почему-то.

Answer 1

Оказывается value в документации это не обозначение синтаксиса, а переменная.

ng-options="t._id as t.name for t in tarifs track by value.$oid"

Работает как нужно.

READ ALSO
Проверить на заполненность

Проверить на заполненность

Как одним условием проверить на заполненность все поля ввода?

96
Вопросы по разработке браузерок. JS, Django, PHP

Вопросы по разработке браузерок. JS, Django, PHP

Я новичок в программировании и задам, вероятно, очень глупый для бывалого программиста вопрос,а скорее даже вопросы, но ответа в сети я так...

57