繁体   English   中英

Knockoutjs映射 - 无法得到它的工作

[英]Knockoutjs Mapping - Trouble getting it to work

我在理解映射如何与基因敲除js时遇到麻烦。

借口:

我有一个API,该API返回JSON

我想将该JSON映射到视图中的列表

javascript:

    var data = JSON.stringify([
        {
            "text": "this be some text"
        },
        {
            "text": "some more text here"
        }
    ]);

    var viewModel = ko.mapping.fromJSON(data);

    var updateData = function(){
        var newData = JSON.stringify([
            {
                "text": "this be some asdfasdfasdf"
            },
            {
                "text": "some more asdfasdfdfdf here"
            }
        ]);

        ko.mapping.fromJSON(newData, viewModel);
    }

    ko.applyBindings(viewModel);

data和newData的格式与从API调用获取数据的格式相同。 (只是对象数组)

我如何输出该数据?

<ul data-bind="foreach: whatgoeshere?">
    <li data-bind="text: text"></li>
</ul>

感谢您向我解释这种魔术的工作原理;)

首先,您应该使用fromJS而不是fromJSON,因为最后一个需要包含json的字符串。

另一件事是,您应该像这样修改视图模型:

{ arr: [ { name:'text' }, ... ] }

而在你的foreach型ARR结合。

如果您不想修改模型,则可以将$ root传递给您的foreach,以指向ko.applyBindings中使用的模型

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM