Vue3 父传子props双向数据绑定 defineProps 和 defineModel

介绍

传递不修改:defineProps (只读)
传递并修改:defineModel (Vue>3.4)
可以根据自己的需求去选择

文档:https://cn.vuejs.org/api/sfc-script-setup.html#definemodel

defineModel使用例子

// 声明 "modelValue" prop,由父组件通过 v-model 使用
const model = defineModel()

// 或者:声明带选项的 "modelValue" prop
const model = defineModel({ type: String })

// 在被修改时,触发 "update:modelValue" 事件
model.value = "hello"

// 声明 "count" prop,由父组件通过 v-model:count 使用
const count = defineModel("count")

// 或者:声明带选项的 "count" prop
const count = defineModel("count", { type: Number, default: 0 })

function inc() {
  // 在被修改时,触发 "update:count" 事件
  count.value++
}

只读不修改defineProps

子组件

 <p>{{open}}</p>

import {defineProps } from "vue";
defineProps({
  open: {
     type: Boolean,
  },
 })

父组件

  <SelectDialog :open="open" ></SelectDialog>

读取并修改defineModel

子组件

import {defineModel} from "vue";

 let open = defineModel({type:Boolean,default:true})
 
function  close(){
  open=false
}

父组件
父组件使用 v-model:open=“open” 声明

  <SelectDialog v-model:open="open"></SelectDialog>

相关推荐

  1. vue3组件数据双向

    2024-07-17 05:28:07       50 阅读
  2. Vue 双向数据

    2024-07-17 05:28:07       39 阅读
  3. Vue2 Vue3 双向数据的区别原理

    2024-07-17 05:28:07       38 阅读
  4. Vue3_2024_10天【Vue2Vue3,使用props的区别】

    2024-07-17 05:28:07       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-17 05:28:07       67 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-17 05:28:07       71 阅读
  3. 在Django里面运行非项目文件

    2024-07-17 05:28:07       58 阅读
  4. Python语言-面向对象

    2024-07-17 05:28:07       69 阅读

热门阅读

  1. MySQL 分库分表

    2024-07-17 05:28:07       25 阅读
  2. C# 文件上传总结

    2024-07-17 05:28:07       23 阅读
  3. Linux的线程

    2024-07-17 05:28:07       22 阅读
  4. Transformer模型在多任务学习中的革新应用

    2024-07-17 05:28:07       25 阅读
  5. 【Qt+opencv】ROI与图像混合

    2024-07-17 05:28:07       25 阅读
  6. Jmeter二次开发Demo

    2024-07-17 05:28:07       23 阅读
  7. ubuntu上通过修改grub启动参数,将串口重定向到sol

    2024-07-17 05:28:07       23 阅读
  8. 【mysql】02在ubuntu24安装并配置mysql

    2024-07-17 05:28:07       26 阅读
  9. 常见云存储服务对比

    2024-07-17 05:28:07       19 阅读
  10. Linux基础 -- 运行安全之ASLR的作用与实现方式

    2024-07-17 05:28:07       28 阅读
  11. Django获取request请求中的参数

    2024-07-17 05:28:07       26 阅读
  12. 上传文件给Ubuntu服务器

    2024-07-17 05:28:07       27 阅读