项目中 偶尔会遇到想给v-model的值 是个动态绑定不同的值
那么我们会发现当直接在v-model中写三元判断是不对的,不能直接使用三元判断。
所以,该怎么处理呢?
你可以使用计算属性或方法来达到类似的效果。
cpp
<template>
<input v-model="computedValue" />
</template>
<script>
export default {
data() {
return {
condition: true, // 这里是你的条件
value1: 'name',
value2: 'pw',
};
},
computed: {
computedValue() {
return this.condition ? this.value1 : this.value2;
},
},
};
</script>
如果你需要双向绑定,你可以使用 set 函数来更新条件:
cpp
computed: {
computedValue: {
get() {
return this.condition ? this.value1 : this.value2;
},
set(value) {
this.condition = value === this.value1;
},
},
},
这样,当输入框的值改变时,computedValue 的 set 函数会被调用,并更新 condition。