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>