ngOptions нестрогое сравнение с ngModel

Есть ли способ провести нестрогое сравнение в <select>ngOptions для того, чтобы установить начальное значение из модели? Например, если модель является целым числом, а свойство ключа параметров является строковым значением, <select> начальное значение к сожалению не установлено.

HTML:

<div ng-app="app">
  <div ng-controller="Controller">
    <select data-ng-model="model" data-ng-options="option.id as option.text for option in options"></select>
  </div>
</div>

JS:

var app = angular.module('app', []);

app.controller('Controller', function ($scope) {
    $scope.model = '2'; // This works as an integer (2) but not as a string ('2')
    $scope.options = [
      {id: 1, text: '11111'},
      {id: 2, text: '22222'}, // I want this option to be selected
      {id: 3, text: '33333'}
    ];
});

1 ответ

Если я не ошибаюсь, вам нужно добавить ключевые слова "track by" в ваши ng-опции, такие как:

    <select data-ng-model="model" data-ng-options="option.id as option.text for option in options track by option.id"></select>
Другие вопросы по тегам