vite + vue3 + js 搭建组件库 + 核心配置与使用

news/2024/9/23 6:36:46/

vite.config.js
这个官网有写

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from "path"
// https://vitejs.dev/config/
export default defineConfig({plugins: [vue()],server:{open:true, //自动打开浏览port:8088 //默认端口},resolve:{// 别名alias:{"@":path.resolve(__dirname,"src")}},build: {lib: {entry: path.resolve(__dirname, 'src/index.js'),name: 'vue3-map',fileName: (format) => `vue3-map.${format}.js`},rollupOptions: {// 确保外部化处理那些你不想打包进库的依赖external: ['vue'],output: {// 在 UMD 构建模式下为这些外部化的依赖提供一个全局变量globals: {vue: 'Vue'}}}}
})

入口文件

// 入口文件
import 'ol/ol.css'
import "./assets/css/common.css"
import Index from "./views/index.vue" // 引入封装好的组件
import Map from "./views/map.vue"
const components = [Index,Map];
// 组件注册
const install = function (App, options) {components.forEach((component) => {App.component(component.name, component);});
};
// Vue 是全局变量时,自动 install
if (typeof window !== 'undefined' && window.Vue) {install(window.Vue)
}
// 通过export default 实现全部加载,通过export 的方式实现按需加载
// 批量的引入
export default {install,Index,//在这里多写一次可以单独调用,例如:Vue.use(vueutils.ReturnTop)Map
}
// 实现按需引入
export { Index,Map }

package.json 核心

  "files": ["dist"],"main": "./dist/vue3-map.umd.cjs","module": "./dist/vue3-map.es.js","style":"./dist/style.css","exports": {".": {"import": "./dist/vue3-map.es.js","require": "./dist/vue3-map.umd.cjs"},"./dist/style.css":{"import": "./dist/style.css","require": "./dist/style.css"}},

打包之后dist文件发布至包管理
在这里插入图片描述
安装后main.js全局导入
在这里插入图片描述
**map原始vue文件,注意要加上 组件name字段,不然全局导入使用有问题 **
在这里插入图片描述

安装后使用,因为我全局导入了,所以这里直接使用
在这里插入图片描述
效果:
在这里插入图片描述


http://www.ppmy.cn/news/1124519.html

相关文章

国产芯片离开ARM实属无奈,全力发展国产芯片架构已是必然

虽然国产芯片近几年仍然在发布ARM架构芯片,不过其实他们已与ARM的主流技术日益脱节,与全球相比已逐渐落后,这意味着国产芯片对于是否继续发展ARM架构已到了做出抉择的时候。 2019年开始ARM先是暂停与一家中国手机芯片企业的合作,其…

Python爬虫程序设置代理常见错误代码及解决方法

Python爬虫程序设置代理是爬虫程序中常用的技巧,可以有效地绕过IP限制,提高爬虫程序的稳定性和效率。然而,在设置代理时,常会出现各种错误代码,这些错误代码可能会影响程序的正常运行,甚至导致程序崩溃。本…

C#中的(++)和(--)运算符

目录 背景: 的前加 效果展示:​ 的后加 效果展示 :​ 总结: 背景: 自增和自减运算符存在于C/C/C#/Java等高级语言中,它的作用是在运算结束前(前置自增自减运算符 )或后(后置自增自减运算符 )将 变量的值加(或减)1。 在C#中,和--是自增和自减运…

顺序读写函数的介绍:fscanf fprintf

目录 函数介绍: fprintf: 将结构体变量s的成员列表内容写入文件中: 文件效果:已经进行了格式化,3.140000是最明显的效果,因为float需要补齐0来补充精度 和printf的对比: 不同之处&#xff…

Java虚拟机(JVM):内存模型、垃圾回收、性能调优与最佳实践

AIGC专栏/AI绘画教程/java面试题领取 引言 Java虚拟机(JVM)是Java应用程序的运行环境,它具有独特的内存管理机制和垃圾回收策略,同时提供了一系列参数供开发人员调优。本文将深入探讨JVM内存模型、垃圾回收算法、垃圾回收器类型…

编程示例:蔡勒公式计算某一天是星期几 公式来源于1886年

计算星期可用 蔡勒(Zeller)公式(只适合于1582年10月15日之后的情形): W Y [Y/4] [C/4] - 2C [13(M1)/5] D - 1 公式中的符号含义如下: C&…

电子器件系列55:lm339比较器

以这个比较器为例 电压比较器可以看作是放大倍数接近“无穷大”的运算放大器。 电压比较器的功能:比较两个电压的大小(用输出电压的高或低电平,表示两个输入电压的大小关系): 当””输入端电压高于”-”输入端时,电压…

联邦学习系统攻击与防御技术

​​​​​​​ 摘要 联邦学习作为一种使用分布式训练数据集构建机器学习模型的新兴技术,可有效解决不同数据用户之间因联合建模而导致的本地数据隐私泄露问题,从而被广泛应用于多个领域并得到迅速发展。然而,现有的联邦学习系统已被证实在…