【vue】如何根据变量名称获取此变量?

<van-field v-model="matCode" @click="handleMatCode(matCode, 'matCode')" label="零件编号"></van-field>

<van-field v-model="catchMatCode" @click="handleMatCode(catchMatCode, 'catchMatCode')" label="零件编号"></van-field>

---------------------------
handleMatCode(value, name) {
	//……一些操作转换后需要将新的值写回
	this[name] = newValue
	this[`${name}`] = newValue
}

开发时经常会用到两个地方要用同一个方法,一般会复用同一个方法,对于不同处的值的改变涉及到把值传回的问题。
我们把变量用形参value传到方法里,但是我们不可能直接this.value直接写回,因为这相当于给全局变量value赋值。以下提供两个方法,通过变量名获取到我们要的变量并赋值。

方法一:this[name] = newValue

方法二:this[`${name}`] = newValue

注意this后边没有小数点哦~


版权声明:本文为weixin_43361722原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。