我尝试使用RactiveJS选中复选框,如下所示:
HTML:
<input type='checkbox' on-change-input-click="toggle">
JS:
toggle : function(){
treatment()
}
toggle
函数永远不会被调用。我为什么要捕捉切换事件?因为一旦切换复选框,就必须更改其他组件。更确切地说,这是树中的复选框。切换树节点中的复选框将切换后代节点。
可能还有我错过的
change
,input
或click
以外的事件...完整的代码在this fiddle中。
最佳答案
您的小提琴使用的是版本0.3.7
,在该版本中,仅支持代理事件,没有用于订阅的init事件,并且ractive本身没有数组方法。因此,您需要执行以下操作:
ractive.on('toggle', function(){
this.get("clicked").push("clicked!");
});
最新版本是
0.6.1
,但是您的代码仍然有问题。如果要在ractive实例上调用方法,则需要在处理程序中调用它:HTML:
<input type='checkbox' on-change="toggle()">
JS:
toggle: function(){
treatment()
}
如果要引发事件,则需要订阅该代理名称:
HTML:
<input type='checkbox' on-change="toggle">
JS:
oninit: function(){
this.on('toggle', function(){
treatment()
});
}