使用“观察”选项时,Knockout.js映射插件会引发错误

时间:2013-09-27 09:15:38

标签: knockout.js knockout-mapping-plugin

我得到了

  

未捕获的TypeError:对象不是函数

尝试这样做时:

var objToMap = {
    a: 1,
    b: [
        {
            c: {
                d: 1
            }
        }
    ]
};
var mapped = ko.mapping.fromJS(objToMap, { observe: ["a"] })

http://jsfiddle.net/22Bjj/

文档说我可以单独使用“观察”,而不指定“复制”。

这是一个简化的例子,在我的真实应用程序中,我有很多要复制的对象,只有一个要观察,所以只使用“观察”对我来说是最好的。

1 个答案:

答案 0 :(得分:1)

您使用的是旧版本的KO映射插件:2.3.5而最新的官方版本是v2.4.1

但是这个最新发布的版本也包含了您遇到的错误:

'observe' mapping options doesn't work with sub-object

这已修复但尚未发布,因此您需要直接从github使用该插件的绝对最新版本。