В настоящее время я пытаюсь разбить большой раздел данных, который предоставляется вызовом $ ajax веб-сервису .NET, что вызывает тайм-аут сценария на странице когда данные сопоставляются с моделью представления нокаута. Я заметил в документации, которую вы должны иметь возможность привязки нескольких источников данных в один ViewModel, например, так:сопоставление нокаутов - несколько источников данных в одной модели представления
var viewModel = ko.mapping.fromJS(alice, aliceMappingOptions);
ko.mapping.fromJS(bob, bobMappingOptions, viewModel);
Я пробовал это в моем собственном коде, как показано ниже, и на первом проходе Я связываю к новой модели представления, а затем на последующих проходах попытки пересвязать к одной и той же модели представления:
if(currLoadIndex == 0)
{
currViewModel = ko.mapping.fromJS(data, mappingOptions);
}
else{
ko.mapping.fromJS(data, mappingOptions, currViewModel);
}
Однако, это только оставляет меня с последней частью данных я загружен, когда я привязать его к мой шаблон. Я попытался установить ключ в моих 'mappingOptions', но это не помогло. Может ли кто-нибудь увидеть что-нибудь очевидное, что я делаю неправильно? Любая помощь приветствуется.
Вы можете подать jsfiddle более полного представления модели и, возможно, включать в выборку данных JSON, возвращаемых вашей веб-сервиса? Обычно каждый набор данных будет представлен либо наблюдаемым массивом, либо полностью отдельной моделью просмотра в зависимости от того, как вы хотите использовать данные. – 79IT