vue3 自定义插件注册的妙用:一次性注册所有全局组件

在项目的开发过程中,我们经常会注册很多公共的组件,以增强代码的可维护性,减少开发工作量。但是如果我们一个个去注册的话,就会在入口处写很多代码,这时我们就可以考虑使用 自定义插件 的方法一次性把所有的组件全部注册。具体方法如下:

(1)在src/components 下新建一个 index.ts,引入所有全局组件

ts 复制代码
import SvgIcon from './SvgIcon/index.vue';
import type { App, Component } from 'vue';

//全局对象
const allGloablComponent: any = { SvgIcon, Pagination }

//对外暴露插件对象
export default {
    install(app: App) {
    	//注册项目全部的全局组件
        Object.keys(allGloablComponent).forEach((key: string) => {
        	//注册为全局组件
            app.component(key, components[key]);
        })
    }
}

(2)在入口文件 main.ts 中安装自定义插件

ts 复制代码
//引入自定义插件对象:注册整个项目全局组件
import gloalComponent from '@/components';
app.use(gloalComponent)

(3)最后就是在你想用的任何地方随意使用组件啦,再也不用一次次的引入啦

相关推荐
To_OC1 小时前
LC 200 岛屿数量:经典 DFS 入门题,我第一次写居然连方向都搞错了
javascript·算法·leetcode
Asmewill2 小时前
grep&curl命令学习笔记
前端
stringwu2 小时前
Flutter 开发必备:MVI 架构的高效实现指南
前端·flutter
用户2136610035723 小时前
Vue2组件化开发与父子通信
前端·vue.js
Momo__3 小时前
TypeScript satisfies 操作符——比 as 更安全的类型守门员
前端·typescript
用户2136610035723 小时前
Vue2事件系统与指令进阶
前端·vue.js
labixiong3 小时前
实现一个能跑的迷你版Promise(一)
前端·javascript·面试
Csvn5 小时前
`??` 和 `||` 搞混,线上用户头像全挂了
前端
kyriewen6 小时前
白宫前脚下了限制令,OpenAI 后脚就把 GPT-5.6 发了
前端·gpt·openai
用户40269244819086 小时前
CRMEB Pro 新增后台接口全链路:路由、权限、验证器、返回格式一次讲清
前端·后端