Object 在Vuejs中的对象内部方法中使用“this”关键字
在Vue组件中,我有如下方法Object 在Vuejs中的对象内部方法中使用“this”关键字,object,methods,vuejs2,vue-component,Object,Methods,Vuejs2,Vue Component,在Vue组件中,我有如下方法 methods: { submitMethod() { let objA = { id: this.id, this.anObject } } } 它给出,语法错误:这是一个保留字 如何在Vue.js中的方法对象中使用对象(在类似数据的地方定义或计算的对象) 一种解决方法是,this.anObject可以指定给局部变量,并在objA中使用该变量,如下所示 submitMethod() { let
methods: {
submitMethod() {
let objA = {
id: this.id,
this.anObject
}
}
}
它给出,语法错误:这是一个保留字
如何在Vue.js中的方法对象中使用对象(在类似数据的地方定义或计算的对象)
一种解决方法是,this.anObject可以指定给局部变量,并在objA中使用该变量,如下所示
submitMethod() {
let anObject = this.anObject
let objA = {
id: this.id,
anObject
}
}
但是,有没有办法直接在objA内部使用this.anObject?这是因为您的JSON无效。应该是
let objA = {
id: this.id,
anObject: this.anObject
}
如果可以使用object restSpread操作符,则可以使用它:
methods: {
submitMethod() {
let objA = {
id: this.id,
...this.anObject
}
}
}
否则,可以使用Object.assign:
methods: {
submitMethod() {
let objA = Object.assign(this.anObject, {
id: this.id,
})
}
}
我们可以通过将这个关键字复制为局部变量来使用它
methods: {
submitMethod() {
let _this = this;
let objA = Object.assign(this.anObject, {
id: _this.id,
})
}
}