无法访问未定义的viewmodel javascript上的属性

时间:2013-08-08 19:04:32

标签: javascript durandal

我收到以下错误:

    Uncaught TypeError: Cannot read property 'property' of undefined.

Undefined是一个javascript视图模型。在本地运行或部署到以完全相同的方式托管的其他环境时,不会发生此错误。

但是,我注意到这个特定viewmodel的定义并没有将它变成main-built.js(使用Durandal和Node.js)在路由器配置中我有以下内容:

   router.mapRoute('viewmodel', 'viewmodels/viewmodel.vm', 'view model', false);

还有什么我需要做的才能将这个viewmodel的定义变成main-built.js吗?据我所知,我需要做的就是路由器映射。

1 个答案:

答案 0 :(得分:1)

所以我很确定我找到了解决问题的方法。

在knockoutjs中的数组上检查了“latestValue”。看来,当在调试模式下运行时,它会使网站速度降低到足以让值得检查。在发布模式下运行时,事情加速到没有“最新”值的程度。

所以...糟糕:

   if ( myObject.latestValue.objArray[0] == "") { blah }

好:

   if ( myObject().objArray[0] == "") { blah }