Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript KnockoutJS可观察到未更新_Javascript_Knockout.js_Knockout Mapping Plugin - Fatal编程技术网

Javascript KnockoutJS可观察到未更新

Javascript KnockoutJS可观察到未更新,javascript,knockout.js,knockout-mapping-plugin,Javascript,Knockout.js,Knockout Mapping Plugin,嗨,我是knockoutjs的新手,从他们网站上的教程开始学习 可观察数组应该更新页面中的所有绑定。我正在使用JSFIDLE进行练习,我的绑定没有被动态更新 我做错了什么 我希望如果我们在文本框中输入,它会更新表格 JS代码: var viewmodel = { posts: ko.observableArray(data) }; 问题是调用posts:ko.observatarray(data)只会使数据可见,而不会使其元素可见。要使整个对象树可见,可以使用mapping插件,如更

嗨,我是knockoutjs的新手,从他们网站上的教程开始学习

可观察数组应该更新页面中的所有绑定。我正在使用JSFIDLE进行练习,我的绑定没有被动态更新

我做错了什么

我希望如果我们在文本框中输入,它会更新表格

JS代码:

var viewmodel = {
    posts: ko.observableArray(data)
};

问题是调用
posts:ko.observatarray(data)
只会使数据可见,而不会使其元素可见。要使整个对象树可见,可以使用mapping插件,如更新的fiddle中所示:

对代码的唯一更改是:

var viewmodel = {
    posts: ko.mapping.fromJS(data)
};

ko映射文档:

感谢您的快速响应。但我的博客名称仍然没有更新。我还有别的事要做吗。感谢文档链接,因为对象结构不同。查看数据数组中的第一个和第二个记录,您将注意到它们的差异。第一张唱片很好用,但第二张唱片结构不同,不起作用。再次感谢!阅读文档链接,非常有帮助!不要陷入映射陷阱,并假设它将解决您所有的问题…确保您了解它创建的内容。