繁体   English   中英

Knockout.js - xxxx不是一个函数

[英]Knockout.js - xxxx is not a function

我正在尝试将Knockout.js合并到WebApplication中。

我基于我的大部分代码的教程都在这里

基本上 - 我有一个项目列表 - 我希望能够单击一个项目并让相应的数据显示在页面底部的div中。 最终我将使用jquery.UI Dialog插件将此div转换为弹出窗口,但是现在,我只是想让selectedItem工作。

我的(简化)代码在这里: http//jsfiddle.net/fZXAX/1/

我只是得到错误: actionListViewModel.selectedActionId不是一个函数

我没有看到这个与以相同方式使用selectedMailId的教程之间的区别。 我的代码和示例之间的唯一区别是我没有使用文字符号。

任何人都可以看到我错在哪里? 提前致谢。

你的错误在这里:

click: function() {actionListViewModel.selectedActionId(id)}

actionListViewModel是一个构造函数,但你的行为就好像它是一个对象。

看到这个分叉的jsFiddle 这一行定义了构造函数

function actionListViewModel () {

被更改为新对象的实例,通过调用匿名构造函数创建。

var actionListViewModel = new function () {

这一行,您在其中创建以前定义的函数的实例

ko.applyBindings(new actionListViewModel());

被更改为只传递我们之前设置的实例

ko.applyBindings(actionListViewModel);

或者,你可以简单地定义一个变量viewModel并设置它= new actionListViewModel(); 然后更新您的单击文字以指向viewModel而不是actionListViewModel 你可以看到这种方法在这里

暂无
暂无

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

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