2011-12-12 49 views
0

是否可以添加多个功能到挖空视图模型?当我使用:在挖空视图模型上的多个功能

var viewModel = { 
    filters: ko.observableArray([]), 
    addFilter: function() { 
     // some code 
    } 
}; 

它工作得很好,只要我添加另一种方法:

var viewModel = { 
    filters: ko.observableArray([]), 
    addFilter: function() { 
     // some code 
    }, 
    copyFilter: function() { 
     // some code 
    } 
}; 

一切都停止工作。我也试图扩大淘汰赛网站上的样本以使用多种功能,但同样的事情也发生在他们身上。

那么有谁知道如何将多个函数添加到视图模型?

编辑:也许应该提到,错误即时得到是“copyFilter未定义”,但它最绝对不是

+1

此代码很好。你的问题可能在别处。 –

+0

不,我不这么认为,如果你单独看一下样本,并在其视图模型中添加另一个函数,它会停止工作。 –

回答

1

KO不关心,如果您的视图模型具有多种功能。

你的问题存在于其他地方,也许在函数本身。检查您的浏览器输出的JavaScript错误。也尝试使这些函数为空函数,只是为了验证它是这些函数中的javascript错误。

+0

问题出在我试图调用函数的地方。显然你不能绑定到模板中的视图模型的函数 –

+0

Erm,你可以绑定到KO模板中的VM上的函数。你只需要知道模板中的上下文。如果您遇到问题,我建议您提出一个新问题,我可以帮助您。 –

+0

嗨,如果我使用rails 3,它使用资产管道将所有 Javascript合并在一起,这是否意味着我的整个应用程序只能有一个视图模型。如果不是,我该如何指定哪个视图模型绑定了哪个视图?在教程代码中,每个页面看起来像一个视图模型是绑定的,但这不适用于rails,因为所有JS都是在第一次加载页面时加载的。 – Dean