Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/434.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 剑道UI MVVM-带动作的事件;加上「;开了两枪_Javascript_Jquery_Kendo Ui_Kendo Datasource_Kendo Mvvm - Fatal编程技术网

Javascript 剑道UI MVVM-带动作的事件;加上「;开了两枪

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) {

在viewmodel中,我有一个名为“curRec”的对象,其属性被绑定到视图上的控件。例如,curRec.id、curRec.targetScore等

此外,curRec还有一个称为“actions”的数组类型的属性。我使用剑道UI中的数据模板呈现动作

当我将一条新记录推送到curRec.actions中时,剑道会在内部两次触发带有动作“add”的事件,从而一次添加两行。在一段时间内,数组只包含一条记录,因为我只推了一行

下面是一些代码:

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版,我没有看到这个问题。