Javascript 当我更改模型主干时获取字段名称。木偶
我有一个函数,每当我通过modelEvents进行模型更改时,它都会被调用Javascript 当我更改模型主干时获取字段名称。木偶,javascript,jquery,backbone.js,marionette,Javascript,Jquery,Backbone.js,Marionette,我有一个函数,每当我通过modelEvents进行模型更改时,它都会被调用 myFunc(value) { var fieldName = ??; if(!value) this.model.unset(fieldName) } } fieldName应该是我更改的字段的名称?我真的不知道如何得到它。当模型更改时,我不希望使用硬编码的模型var changedAttribute=..keys(this.model.changedAttributes())
myFunc(value) {
var fieldName = ??;
if(!value)
this.model.unset(fieldName)
}
}
fieldName应该是我更改的字段的名称?我真的不知道如何得到它。当模型更改时,我不希望使用硬编码的模型
var changedAttribute=..keys(this.model.changedAttributes())[0];
console.log(changedAttribute)代码>
将返回上次设置更改的属性列表
您可以使用\u0.keys
+更改属性
myModel.on('change', function() {
myFunc(_.keys(this.changedAttributes())[0]);
})
在modelEvents的情况下,可以按如下方式使用
modelEvents: {
"change": function(){
myFunc(_.keys(this.changedAttributes())[0]);
}
}
或
我可以像下面的modelEvents那样:{“change:name”:“myfunc”},myfunc:function(){var name=..keys(this.changedAttributes());此处失败,我将其设置为未定义否,它不会按以下方式工作,签出更新回答我认为您正在尝试获取更改的属性,但现在您正在询问有关模型的问题,您是否可以对此进行清除?我是指特定的模型字段,我不想要属性列表
modelEvents: {
"change": "onAnyModelChange"
},
onAnyModelChange: function() {
myFunc(_.keys(this.changedAttributes())[0]);
}