Javascript 剑道UI MVVM-带动作的事件;加上「;开了两枪
在viewmodel中,我有一个名为“curRec”的对象,其属性被绑定到视图上的控件。例如,curRec.id、curRec.targetScore等 此外,curRec还有一个称为“actions”的数组类型的属性。我使用剑道UI中的数据模板呈现动作 当我将一条新记录推送到curRec.actions中时,剑道会在内部两次触发带有动作“add”的事件,从而一次添加两行。在一段时间内,数组只包含一条记录,因为我只推了一行 下面是一些代码:Javascript 剑道UI MVVM-带动作的事件;加上「;开了两枪,javascript,jquery,kendo-ui,kendo-datasource,kendo-mvvm,Javascript,Jquery,Kendo Ui,Kendo Datasource,Kendo Mvvm,在viewmodel中,我有一个名为“curRec”的对象,其属性被绑定到视图上的控件。例如,curRec.id、curRec.targetScore等 此外,curRec还有一个称为“actions”的数组类型的属性。我使用剑道UI中的数据模板呈现动作 当我将一条新记录推送到curRec.actions中时,剑道会在内部两次触发带有动作“add”的事件,从而一次添加两行。在一段时间内,数组只包含一条记录,因为我只推了一行 下面是一些代码: addMore: function(e) {
addMore: function(e) {
e.preventDefault();
this.get("curRec.actions").push( new ActionModel({}) );
},
removeMore: function (e) {
e.preventDefault();
var action = e.data;
var index_item_to_remove = this.get("curRec.actions").indexOf(action);
this.get("curRec.actions").splice(index_item_to_remove, 1);
}
我浏览了剑道代码,发现有两次调用动作为“add”的事件
关于什么可能导致ObservalArray触发事件/操作“add”两次的任何提示?您能在JSFIDLE中重现这一点吗?据我所见,没有任何事情会导致事件发生两次。我使用的是剑道UI MVVM框架的2015.2.902版,我没有看到这个问题。