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)最后就是在你想用的任何地方随意使用组件啦,再也不用一次次的引入啦

相关推荐
Chengbei112 分钟前
Chrome浏览器渗透利器支持原生扫描!JS 端点 + 敏感目录 + 原型污染自动化检测|VulnRadar
javascript·chrome·安全·web安全·网络安全·自动化·系统安全
小璐资源网4 分钟前
如何写出干净、易维护的 HTML 结构
前端·html
gongzemin6 分钟前
怎么在VS Code 调试vue3 源码
前端·vue.js
C澒7 分钟前
微前端容器标准化 —— 公共能力篇:CDN 能力
前端·架构
wulijuan8886661 小时前
ECharts图表性能优化的那些事
前端·javascript·echarts
❀͜͡傀儡师1 小时前
通过npm 手动安装、Docker 部署 OpenClaw小龙虾
前端·docker·npm
前端AI充电站1 小时前
Google 开始卷价格了:Gemini 3.1 Flash-Lite,会不会把 AI 应用成本真的打下来?
前端·人工智能
风止何安啊1 小时前
数字太长看花眼?一招教它排好队:千分位处理的实现
前端·javascript·面试
沙包大的拳头1 小时前
扩展运算符无法克隆 getBoundingClientRect() 获取的值
前端·javascript