vue 实现赋值
Vue 实现赋值的方法
在 Vue 中,赋值操作通常涉及数据绑定和响应式更新。以下是几种常见的实现方式:
直接赋值(适用于 Vue 2 和 Vue 3)
在 Vue 实例或组件中,可以通过修改 data 属性来实现赋值。Vue 会自动检测这些变化并更新视图。
data() {
return {
message: 'Hello Vue!'
}
},
methods: {
updateMessage() {
this.message = 'New Value'
}
}
Vue 3 的 ref 和 reactive(仅限 Vue 3)
Vue 3 引入了 Composition API,提供了新的响应式方式:
import { ref, reactive } from 'vue'
// 使用 ref
const count = ref(0)
function increment() {
count.value++
}
// 使用 reactive
const state = reactive({
name: 'Vue',
version: 3
})
function updateVersion() {
state.version = 3.2
}
数组和对象的响应式更新
由于 Vue 的响应式限制,直接修改数组或对象的某些属性可能不会触发更新:
// 数组 - 正确方式
this.items.splice(index, 1, newItem)
// 或
this.$set(this.items, index, newItem)
// 对象 - 正确方式
this.$set(this.object, 'newProperty', value)
// 或(Vue 3)
this.object.newProperty = value
表单输入绑定
Vue 提供了 v-model 指令来实现表单输入和应用状态之间的双向绑定:
<input v-model="message" placeholder="edit me">
<p>Message is: {{ message }}</p>
计算属性
当需要基于其他属性计算值时,可以使用计算属性:
computed: {
reversedMessage() {
return this.message.split('').reverse().join('')
}
}
监听属性变化
使用 watch 可以监听特定数据的变化并执行操作:

watch: {
message(newVal, oldVal) {
console.log('Message changed from', oldVal, 'to', newVal)
}
}






