2016-01-19 2 views
2

Я работаю над проектом Ionic 2. Я заполняю выбранный тип ввода данными из базы данных. Я использую ngFor для отображения данных. На выбранном типе ввода (изменение) Я хочу получить дополнительные данные, но ионная ошибка 2 "Ошибка при попытке разгона". Я застрял прямо сейчас. Я опубликовал вопрос о github, но не получил ответа. И мой массив данных не пуст. Работая на последнем альфа ионных 2 (alpha49)ngFor in ionic 2 throwing «ошибка пытается отличить»

выберите входной код приведен ниже

<select (change)="getDetails()" [(ngModel)]="userList"> 
    <option *ngFor="#name of userList">{{name.name}}</option> 
</select> 

и в машинописном файле У меня есть функция

getDetails() { 
    console.log("ok"); 
} 
+0

Вы можете разместить код здесь, так что мы можем видеть, что вы пробовали? –

+0

Как выглядит 'userList'? –

+0

Публичный пользовательЛист = [ {имя: 'Jilles', возраст: 21}, {имя: 'Todd', возраст: 24}, {имя: 'Lisa', возраст: 18} ]; – Ct9

ответ

3

Проблема заключается в том, что элементы в userList не являются уникальными. Вероятно, вы использовали макет данных и скопировали их.

var userList = ['nicojs', 'nicojs' /* "error trying to diff" */]; 

Угловой 2 необходимо отслеживать, какой элемент он перечисляет, как это делает AngularJS. Поэтому каждый элемент должен быть уникальным.

4

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

0

Как уже упоминалось в Warren, в моем случае я использовал селекторный массив как мой ngModel, который переписывал мой список селекторов при изменении.

Я изменил код из:

<select class="form-controlRT-sm" [(ngModel)]="*dashBoardData.StatusList*"> 
<option *ngFor="let item of dashBoardData.StatusList" [value]="item.Key">{{item.Value}}</option> 
</select> 

To:

<select class="form-controlRT-sm" [(ngModel)]="*dashBoardData.status*"> 
<option *ngFor="let item of dashBoardData.StatusList" [value]="item.Key">{{item.Value}}</option> 
</select> 
Смежные вопросы