knockout js将正确的参数传递给方法

时间:2013-02-08 21:42:56

标签: javascript knockout.js

在knockout中使用click bind时,knockout如何知道将正确的参数传递给它绑定的方法?

<div id="test" data-bind="click: runTest"/>
</div>


self.runTest = function (coolParameter){
doSomethingCool();
}

2 个答案:

答案 0 :(得分:2)

  

在调用处理程序时,Knockout将提供当前模型   value作为第一个参数。如果你这样做,这个特别有用   为集合中的每个项目渲染一些UI,您需要知道   点击了哪个项目的用户界面。

来自the documentation

在文档中还讨论了如何通过添加包装函数来传递更多参数

<button data-bind="click: function(data, event) { 
    myFunction('param1', 'param2', data, event) 
}">
    Click me
</button>

答案 1 :(得分:0)

knockout了解从上下文传递的值。它是当前的模型对象。例如,如果你在foreach淘汰赛中通过当前项目。