отображение нокаута + добавление в наблюдаемый массив


Скрипку можно найтиздесь .

Я добавляю к наблюдаемому массиву, который отображается на ko.mapping.fromJS().

На мой взгляд, Я строю URL-адрес, используя свойство массива attr: { href: '/Users/Summary?userId=' + ID() }.

Если я хочу добавить элемент в массив, я использую self.Users.push().

Если я это сделаю, то получу ошибку ID is not a function.

Итак, мой вопрос заключается в том, как правильно добавлять элемент в массив, или я неправильно строю href attr?

1 3

1 ответ:

Похоже, что вы пытаетесь столкнуть простой объект (без наблюдаемых объектов). Сначала вы должны построить его, или сопоставить его с obsevables.

self.Users.push(new User(data));

Или

self.Users.push(ko.mapping.fromJS(data, mapping));
Другой альтернативой было бы просто удалить () из выражения. Но тогда наблюдаемые ID-свойства будут вести себя странно.