Vue3中v-model语法糖的三种写法详解
更新时间:2024年01月19日 09:32:10 作者:nana努力学习前端
这篇文章主要为大家详细介绍了Vue3中v-model语法糖的三种写法,文中的示例代码讲解详细,具有一定的借鉴价值,有需要的小伙伴可以跟随小编一起学习一下
Vue2 中的 v-model 默认解析为 :value 和 @input
Vue3 中的 v-model 默认解析为 :modelValue 和 @update:modelValue
Vue3 中的 v-model:attr 默认解析为 :attr和 @update:attr
Vue3 第一种写法 modelValue 和 @update:modelValue
父组件:
<script setup lang="ts"> import { ref } from 'vue' const count = ref(10) </script> <template> <son :model-value="count" @update:modelValue="count = $event" ></son> </template>
子组件:
<script setup lang="ts"> // 计数器 // 通过 v-model 解析成 modelValue @update:modelValue defineProps<{ modelValue: number }>() defineEmits<{ (e: 'update:modelValue', count: number): void }>() </script> <template> <div class="cp-radio-btn"> 计数器:{{ modelValue }} <button @click="$emit('update:modelValue', modelValue + 1)">+1</button> </div> </template>
Vue3 第二种写法 v-model
父组件:
<script setup lang="ts"> import { ref } from 'vue' const count = ref(10) </script> <template> <son v-model="count"></son> </template>
子组件:
<script setup lang="ts"> // 计数器 // 通过 v-model 解析成 modelValue @update:modelValue defineProps<{ modelValue: number }>() defineEmits<{ (e: 'update:modelValue', count: number): void }>() </script> <template> <div class="cp-radio-btn"> 计数器:{{ modelValue }} <button @click="$emit('update:modelValue', modelValue + 1)">+1</button> </div> </template>
Vue3 第三种写法 通过v-model:count 解析成 count @update:count
父组件:
<script setup lang="ts"> import { ref } from 'vue' const count = ref(10) </script> <template> <son v-model:count="count"></son> </template>
子组件:
<script setup lang="ts"> // 计数器 // 通过 v-model:count 解析成 count @update:count defineProps<{ count: number }>() defineEmits<{ (e: 'update:count', count: number): void }>() </script> <template> <div class="cp-radio-btn"> 计数器:{{ count }} <button @click="$emit('update:count', count + 1)">+1</button> </div> </template> <style lang="scss" scoped></style>
以上就是Vue3中v-model语法糖的三种写法详解的详细内容,更多关于Vue3 v-model的资料请关注脚本之家其它相关文章!
相关文章
vue3 reactive定义的引用类型直接赋值导致数据失去响应式问题
这篇文章主要介绍了vue3 reactive定义的引用类型直接赋值导致数据失去响应式问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-06-06vue之el-upload使用FormData多文件同时上传问题
这篇文章主要介绍了vue之el-upload使用FormData多文件同时上传问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2023-05-05
最新评论