v-model绑定的数据 初始化之后 能不能给他赋给一个别的变量 不让他随着页面的值变更而变更?
回答:
一个输入框:
htmlCopy code <input type="text" v-model="message">
你可以把 message
的初始值保存到另一个变量中:
data() { return { message: 'Hello world!', originalMessage: 'Hello world!' } }
现在 originalMessage
中包含 message
的初始值。如果用户更改了输入框中的值,message
将随之更新,但 originalMessage
的值不会受到影响
console.log(this.message) // 输出用户在输入框中输入的值 console.log(this.originalMessage) // 输出初始值
但是方法只适用于基本数据类型(如字符串、数字、布尔值等)。如果 message
是一个对象或数组,那么就需要使用深拷贝来保存初始值,以确保它不受页面值的影响
不需要 v-model 绑定的变量随着页面的值变更而变更,那么应该要考虑这个场景是不是根本不需要 v-model 来实现,并不是要局限于一定要用 v-model。
别用双向绑定了,不就可以了。把v-model
换成:
