黑豹程序员-最简单的vue3 setup 父组件调用子组件并传参

需求

1、一个vue文件过大,代码行过多时
2、多个vue页面共同调用一个部分代码时,可以抽取共用组件

案例

多个业务中共用一个“查看”,将查看对话框提取出来,形成单独的 view.vue。
需要注意的问题:
1)需要在父组件中去操纵子组件的变量,控制对话框的展现
2)查看谁?父组件要传递参数id给子组件

Vue机制

1)把代码移到子组件中
2)子组件增加defineExpose方法,对外暴露调用的方法
2)父组件中import导入
3)父组件中声明子组件

子组件 view.vue

暴露方法给父组件调用

defineExpose({
toView
})

自身业务方法,注意方法需要参数id
const toView = (id)=>{ … }

父组件

template部分

注意属性ref,通过ref进行关联,相当于子组件的别名

加载子组件

import SuperviseView from ‘./view.vue’
const superviseViewRef = ref(null)

const toView = (id)=>{
superviseViewRef.value.toView(id) //调用子组件方法,并传参
}

相关推荐

  1. 黑豹程序员-vue3 setup 组件组件

    2024-03-19 12:26:03       36 阅读
  2. vue实现组件组件

    2024-03-19 12:26:03       47 阅读
  3. vue3组件组件值,组件接受

    2024-03-19 12:26:03       38 阅读
  4. 组件组件方式?

    2024-03-19 12:26:03       42 阅读
  5. 组件组件方式

    2024-03-19 12:26:03       23 阅读
  6. Vue3 /组件相互调用

    2024-03-19 12:26:03       37 阅读
  7. vue3组件之间调用

    2024-03-19 12:26:03       39 阅读

最近更新

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

    2024-03-19 12:26:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-19 12:26:03       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-19 12:26:03       82 阅读
  4. Python语言-面向对象

    2024-03-19 12:26:03       91 阅读

热门阅读

  1. Linux:vim详解及使用

    2024-03-19 12:26:03       36 阅读
  2. P1041 [NOIP2003 提高组] 传染病控制

    2024-03-19 12:26:03       43 阅读
  3. Windows程序员用MAC:初始设置(用起来像win一些)

    2024-03-19 12:26:03       49 阅读
  4. 【无标题】

    2024-03-19 12:26:03       43 阅读
  5. MacOS安装Homebrew教程

    2024-03-19 12:26:03       44 阅读
  6. c# Action 关键字使用

    2024-03-19 12:26:03       43 阅读
  7. 华为机试题-最小矩阵

    2024-03-19 12:26:03       46 阅读
  8. SQL注入写shell 单引号被过滤解决思路

    2024-03-19 12:26:03       39 阅读