У меня есть ViewModel каккарту изменения данных JSON в наблюдаемом массиве
AppViewModel = {
agent : ko.observableArray([ {
name : 'test',
age : '23'
}])
};
Мои данные JSon приходит как
{"agent":[{"name":"john","age":"23"},{"name":"conor","age":"23"}]}
для ajaxcall каждые 3 сек
я мог бы в состоянии заменить наблюдаемым массив типа [от here]
success : function(responseData) {
var data = ko.toJS(responseData);
AppViewModel.agent(data.agent);
}
Несколько раз данные JSON приходит как
{"agent":[{"name":"john"}]}
без возраста, в этом случае неполные данные остаются с наблюдаемым массивом
и получаю ошибку сценария как
'age' is undefined
в привязки данных
даже после поступления нового ответа, как {"agent":[{"name":"john","age":"23"}]}
I хотите, чтобы весь obsevable массив заменялся новыми данными.
Благодаря
EDIT:
DataBinding:
<!-- ko foreach: agent-->
<tr>
<td style="font-weight:bold;" data-bind="text: name"></td>
<td style="font-weight:bold;" data-bind="text: age"></td>
</tr>
<!-- /ko -->
Где вы можете получить ошибку в своем javascript или в процессе рендеринга? Можете ли вы опубликовать свое мнение? – Damien
@Damien Я дал представление – user2779544