我仍然在学习Knockout的正确用法,而且我发现自己在设置我的viewmodel的时候很快就会ko.observable ,而只是定义一个对象字面值并通过映射插件传递给它 var viewModel = ko.mapping.fromJS(data); 或者至less,沿着将所有数据填充到viewModel的一个属性的东西就像这样 var viewModel = { … events etc … , "data": ko.mapping.fromJS(data) } 说实话,我一直这样做的主要原因是要ko.observableArray重复键入ko.observable和ko.observableArray 。 我只是想弄清楚这是否是一个好方法,如果有任何缺点,一起放弃具体的var x = ko.observable()声明。 另外,我正在做这一切的负载,而不是响应任何ajax调用等,从我可以告诉,是映射插件的devise。 在你用knockout工作的时候,你还是一个接一个地手动声明observables,还是用了我使用的mapping.fromJS方法? 像这样经常使用映射插件有什么具体的缺点吗? 编辑: 具体例子 在这篇文章中 ,史蒂夫通过这样做来build立自己的观点模型 var initialData = [ { … } , { … } ]; // json from the serializer var viewModel = { gifts : […]
有没有办法将一个JSON数据对象映射到可观察数组,然后将每个可观察数组的项都初始化为特定types的视图模型? 我已经看了所有的淘汰赛的文件,以及淘汰赛和映射的例子在这里,我找不到任何答案适用于我后。 所以,我有以下的JSON数据: var data = { state : { name : 'SD', cities : [{ name : 'Sioux Falls', streets : [{ number : 1 }, { number : 3 }] }, { name : 'Rapid City', streets : [{ number : 2 }, { number : 4 }] }] } }; 我有以下观点模型: var […]