是否可以在下面的示例中使用字符串设置变量 myvar
?
<script>
export default {
data() {
return {
myvar: 'foo'
};
}
}
</script>
我试过这个没有用:
eval('myvar'): 'foo'
最佳答案
这是一个非常粗略和基本的示例,说明您将如何完成这样的事情:
new Vue({
el: "#app",
data() {
return {
myVar: 'hello'
}
},
methods: {
changeVal(varName, newValue) {
this[varName] = newValue;
}
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
{{myVar}}
<button @click="changeVal('myVar', 'world')">change myVar</button>
</div>
在这里,我们使用了一个方法,该方法获取变量的名称和将其更改为的值 - 然后将其传递给当前的 vue 模型实例(由方法内部的 this
表示)以修改动态变量名的值。
关于vue.js - VueJS : Set variable name using string,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55691495/