У меня есть два ko.observablearray. Один из массивов, которые я заполняю некоторыми значениями, получаемыми с сервера:дополнительная функция ko.observablearray как removeall, indexOf приходит как не поддерживается
`self.AllItems = ko.observableArray ([]);
function (data) {
for (var index = 0; index < data.length; index++) {
self.AllItems.push(data[index]);
}
};
Второй массив с данными, которые я получаю от определенного свойства моей модели.
self.SelectedItems = ko.observableArray(modelData.Modalities);
Это прекрасно работает.
Теперь я по существу хочу удалить «selecteditems» из «allitems».
Я попытался
self.AllItems.removeAll(self.SelectedItems());
Это не работало. И тогда я пытался indexOf
, когда получил исключение, в котором говорилось, что объект не поддерживает эту операцию. Я полностью смущен. Скажите, пожалуйста, где я ошибаюсь.
Проблема, похоже, лежит в другом месте. Мой список AllItems содержит значения, которые я вижу, потому что я привязал его к элементу управления ui, показывает длину как ноль. Я не могу получить доступ к каким-либо элементам в нем. – Nanda
Вы уверены, что не используете modelData.Modalities() вместо modelData.Modalities? – Damien
Да, это прекрасно работает. Я также проверил содержимое массива selectedItems. – Nanda