当前位置: 首页 > wzjs >正文

辽宁营商建设局网站品牌推广专员

辽宁营商建设局网站,品牌推广专员,如何做一名合格的网站巡查,合肥制作网站单位有哪些整理不易,如果本文对你有帮助,欢迎点个【赞 👍】【收藏 ⭐】【关注 🧡】 📦Vue 组件库发布实战(含 TypeScript 支持) 在上一篇中我们完成了一个基础 Vue 3 组件的 npm 发布流程。本文将升级内容…

整理不易,如果本文对你有帮助,欢迎点个【赞 👍】+【收藏 ⭐】+【关注 🧡】

📦Vue 组件库发布实战(含 TypeScript 支持)

在上一篇中我们完成了一个基础 Vue 3 组件的 npm 发布流程。本文将升级内容,带你完成一个支持 TypeScript 和多个组件的 Vue 组件库发布流程,适合想要长期维护 UI 库或工程化封装的你!


🔧一、项目初始化(TS + Vite)

① 创建目录并初始化项目

mkdir vue-ui-lib
cd vue-ui-lib
pnpm init -y

② 安装开发依赖

pnpm add vue@^3
pnpm add vite vue-tsc @vitejs/plugin-vue -D
pnpm add typescript -D

③ 初始化 TypeScript 配置

npx tsc --init

并编辑 tsconfig.json

{"include": ["src"],"exclude": ["node_modules", "dist"],"compilerOptions": {"target": "ESNext","module": "ESNext","moduleResolution": "Node","declaration": true,"declarationDir": "dist/types","outDir": "dist","strict": true,"esModuleInterop": true,"skipLibCheck": true,"jsx": "preserve","lib": ["ESNext", "DOM"]}
}

📁二、组件结构设计(多组件支持)

推荐结构:

src/components/Button/index.tsButton.vueInput/index.tsInput.vueindex.ts

示例组件:Button.vue

<template><button class="btn" @click="onClick"><slot /></button>
</template><script lang="ts" setup>
defineProps<{onClick?: () => void
}>()
</script><style scoped>
.btn {padding: 8px 16px;background-color: #409eff;color: white;border-radius: 4px;border: none;cursor: pointer;
}
</style>

对应的 index.ts

import Button from './Button.vue'
export default Button

根入口 src/index.ts

export { default as MyButton } from './components/Button'
export { default as MyInput } from './components/Input'
// 添加更多组件时,继续扩展

🏗️三、配置 Vite 构建为组件库

创建 vite.config.ts

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path'export default defineConfig({plugins: [vue()],build: {lib: {entry: path.resolve(__dirname, 'src/index.ts'),name: 'MyUILib',fileName: (format) => `my-ui-lib.${format}.js`,formats: ['es', 'umd']},rollupOptions: {external: ['vue'],output: {globals: {vue: 'Vue'}}}}
})

🧾四、配置 package.json

{"name": "@your-username/vue-ui-lib","version": "1.0.0","main": "dist/my-ui-lib.umd.js","module": "dist/my-ui-lib.es.js","types": "dist/types/index.d.ts","files": ["dist"],"peerDependencies": {"vue": "^3.0.0"},"scripts": {"build": "vite build && vue-tsc --declaration --emitDeclarationOnly --outDir dist/types","prepublishOnly": "pnpm run build"}
}

🚀五、构建 & 发布组件库

① 构建产物

pnpm run build
  • 生成 dist/*.js(构建好的 JS)
  • 生成 dist/types(类型声明)

② 登录并发布

pnpm login
pnpm publish

✅ 包发布成功后,即可被安装使用:

pnpm add @your-username/vue-ui-lib

🧪六、在项目中使用你的组件库

<template><MyButton @click="sayHi">Hello</MyButton>
</template><script setup lang="ts">
import { MyButton } from '@your-username/vue-ui-lib'const sayHi = () => alert('Hi from UI lib!')
</script>

📦七、如何持续更新和扩展

场景操作
➕ 添加新组件components/ 下新建文件夹,并导出
🔁 更新版本修改 package.json 中的 version
📦 重新发布pnpm run build && pnpm publish

📚总结回顾

步骤内容
1️⃣初始化 TS + Vite 项目
2️⃣编写 Vue 3 组件结构,支持多组件
3️⃣配置 Vite 构建和类型输出
4️⃣设置 package.json,准备发布
5️⃣构建并发布到 npm
6️⃣在其他项目中测试使用
7️⃣持续维护和扩展版本

👏 这样一个支持 TypeScript 的 Vue 组件库就发布完成啦!可以无限扩展和维护。

http://www.dtcms.com/wzjs/98930.html

相关文章:

  • 天津最好网站建设公司上海seo公司哪个靠谱
  • 烟台有哪些网站建站推广公司百度软件开放平台
  • 石家庄网站建设求职简历宣传推广方案
  • 连锁店 网站建设 中企动力西安网站推广排名
  • 静安网站建设网络营销软文范例
  • 建设自己的网站怎么做苏州新闻今天最新消息新闻事件
  • 沈阳定制网站制作广告公司品牌营销推广
  • 有网站用nodejs做后台如何拿高权重网站外链进行互换?
  • cms+wordpress模板seo技术有哪些
  • 毕业网站设计代做软文广告经典案例100字
  • 网站建设首页模板seo都用在哪些网站
  • 商业门户网站有哪些清远今日头条新闻
  • 网站建设价格优惠网络推广网站电话
  • 购物网站建设it培训机构哪个好
  • 建立化妆品网站功能免费网络推广平台有哪些
  • 如何做logo模板下载网站网站做优化一开始怎么做
  • 网站全屏banner轮播图电脑全自动挂机赚钱
  • seo优化网站排名百度趋势搜索
  • 做火影网站背景图精准营销的成功案例
  • ip会变怎么做网站网站免费推广
  • 湖南美食网站建设策划书网站seo收费
  • 江西个人网站备案实体店营销方案
  • 客户网站建设完成后需要什么百度下载安装到桌面上
  • 南阳网站制作怎么样搜索引擎提交入口网址
  • 简述网站开发流程seo优化公司如何做
  • 卫生院网站建设qq群推广链接
  • 路由器设置济南seo优化公司助力网站腾飞
  • it行业怎么入门宁波网站优化公司哪家好
  • 网站上面的水印怎么做市场推广是做什么的
  • 萧山建设有限公司网站综合搜索引擎