我尝试使用RactiveJS选中复选框,如下所示:

HTML:

<input type='checkbox' on-change-input-click="toggle">


JS:

toggle : function(){
    treatment()
}


toggle函数永远不会被调用。

我为什么要捕捉切换事件?因为一旦切换复选框,就必须更改其他组件。更确切地说,这是树中的复选框。切换树节点中的复选框将切换后代节点。

可能还有我错过的changeinputclick以外的事件...

完整的代码在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()
    });
}

09-30 16:44
查看更多