vue2中this.$emit(“update:xx“,value)和xx.sync的用法在vue3中有什么变化
2024-01-08 20:08:45
在 Vue 3 中,v-model
语法和 this.$emit("update:xx", value)
的用法略有变化,而 .sync
修饰符已经不再存在。下面是 Vue 2 中和 Vue 3 中的比较:
Vue 2 中的写法:
使用 this.$emit("update:xx", value)
:
<!-- ChildComponent.vue -->
<template>
<input :value="value" @input="updateValue" />
</template>
<script>
export default {
props: ['value'],
methods: {
updateValue(event) {
this.$emit('update:xx', event.target.value);
}
}
};
</script>
<!-- ParentComponent.vue -->
<template>
<child-component :xx.sync="parentValue" />
</template>
<script>
import ChildComponent from './ChildComponent.vue';
export default {
components: {
ChildComponent
},
data() {
return {
parentValue: ''
};
}
};
</script>
Vue 3 中的写法:
使用 v-model:xx
:
<!-- ChildComponent.vue -->
<template>
<input v-model:xx="value" />
</template>
<script>
export default {
props: ['value']
};
</script>
<!-- ParentComponent.vue -->
<template>
<child-component v-model:xx="parentValue" />
</template>
<script>
import ChildComponent from './ChildComponent.vue';
export default {
components: {
ChildComponent
},
data() {
return {
parentValue: ''
};
}
};
</script>
在 Vue 3 中,推荐使用 v-model:xx
来简化双向绑定的语法。这样的写法更加直观和简洁,更好地符合 Vue 3 的设计理念。
文章来源:https://blog.csdn.net/weixin_45266691/article/details/135463782
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!