У меня есть вид модель приходит с сервера, как JSON, как этотРасширение модель представления в KnockoutJS с отображением плагин
{
Project: {
Items: {
ItemA: {
Tags: [
...
]
},
ItemB: ...
}
}
}
Я тогда связывающим этот объект с knockout.mapping плагин, но мне нужно Itema иметь, например, дополнительный маркированы наблюдаемой, так что я в разметке может сделать что-то вроде
<ul data-bind="foreach: Project.Items">
...
<input type="checkbox" data-bind="checked: Marked">
Я попытался с помощью create
опции в процессе отображения (как показано здесь ko.mapping create function, extend object), но я не могу выяснить, как вложить create
метод расширения объектов в Project.Items.
Я пытался отображения как этот
var mappings = {
'Items': {
create: function (options) {
return $.map(options.data, function(obj) {
return new Item(obj);
});
}
}
}
вы должны вложенности с отображением плагин похож на этот - http://stackoverflow.com/questions/9951521/map-json-data-to-knockout-observablearray-with-specific-view-model-type/9951903 # 9951903? – Artem
да, очень нравится, но мне нужно переопределить создание объектов в свойстве Items для Project, поэтому, я думаю, вопрос в том, как я переопределяю создание элементов в наблюдаемом массиве – altschuler