Javascript Strage行为使用Knockout.js 3.2.0,班次未定义
这个人真是个吹毛求疵的人。 我将一些div移动到模板中,而没有改变任何ko的datacontext,突然在模板中出现了可怕的“undefined不是一个函数” 事实证明,这不是与缺失的可观测数据相关的东西,而是ko内部的东西: 看起来continuousNodeArray不是一个普通的旧数组,而是一个jQuery对象数组(我只在这个特定的实例中假设,因为我相信它应该是一个普通的旧数组) 所以我很想知道这是不是一个Knockout.js bug或者是我的模板中触发这种行为的东西。我通过添加以下内容来解决此问题:Javascript Strage行为使用Knockout.js 3.2.0,班次未定义,javascript,jquery,arrays,knockout.js,Javascript,Jquery,Arrays,Knockout.js,这个人真是个吹毛求疵的人。 我将一些div移动到模板中,而没有改变任何ko的datacontext,突然在模板中出现了可怕的“undefined不是一个函数” 事实证明,这不是与缺失的可观测数据相关的东西,而是ko内部的东西: 看起来continuousNodeArray不是一个普通的旧数组,而是一个jQuery对象数组(我只在这个特定的实例中假设,因为我相信它应该是一个普通的旧数组) 所以我很想知道这是不是一个Knockout.js bug或者是我的模板中触发这种行为的东西。我通过添加以下
jQuery.fn.shift = [].shift;
但我肯定肯定还有别的事情发生。有任何线索吗?这是已知的,而且不是最近(10月8日)修复了使用jquery.tmpl作为模板引擎时出现的错误 请参阅github上的: 因此,如果您检查,您将看到现在使用的是
splice
,而不是shift
:
但是,最新版本(3.2.0)中未包含此选项,因此在新版本发布之前,您应该严格遵守您的解决方案。我们确实需要重新编写才能回答此问题…@Jeroen我理解。恐怕我现在不能生产。如果可能的话,我会尽量加入一个(截止日期)。谢谢!我有点松了一口气,我的代码不存在严格意义上的问题。