组件化npm包打包和使用

背景:本地环境对功能组件提取,开发环境下通过本地路径引用,发布模式下走npm包引用

1、项目下新建packages/HelloWorld文件夹,在此文件夹下运行终端

npm init

新建packages/HelloWorld/index.vue文件

新建packages/HelloWorld/index.js文件

javascript 复制代码
import helloworld from "./index.vue";

export {
  helloworld
}

1、本地打包:

npm pack

将helloworld-1.0.1.tgz 放到项目根目录下,运行终端命令

npm install helloworld-1.0.1.tgz //加载组件

npm uninstall helloworld-1.0.1.tgz //删除组件

在项目.vue文件中引用

html 复制代码
<script setup>
import {helloworld} from "helloworld"
</script>

<template>
  <div>
    <span>测试helloworld组件</span>
    <helloworld></helloworld>
  </div>
</template>

2、私库打包

npm config get registry //查看 npm 配置私库地址

npm config set registry ${私库地址:https://registry.npmjs.org/} //设置私库地址

npm adduser --registry ${私库地址:https://registry.npmjs.org/} //添加用户

npm login //登录私库账号

npm publish //将npm包推送到私库

npm unpublish ${包名} --force //删除已发布的包

npm install ${包名} //下载对应包

3、本地路径访问

安装@types/node,配置@=src目录路径

npm install @types/node --save-dev

在vite.config.ts文件添加配置

"hello-world": resolve(__dirname, "packages/HelloWorld")

在项目.vue文件中引用

相关推荐
深念Y7 分钟前
浏览器缩放检测的前端通用方案
前端
超级码里奥202411 分钟前
OpenClaw(龙虾[特殊字符])AI 智能体安装教程
windows·node.js
风骏时光牛马15 分钟前
AIAgent异常故障根因分析与复盘总结
前端
weixin_4316004416 分钟前
前端数据埋点(7):Web Vitals——页面慢不慢,不是再包一层 fetch
前端·性能优化·sentry·数据埋点
এ慕ོ冬℘゜1 小时前
前端实战:jQuery实现动态表格渲染与状态切换功能
前端·javascript·jquery
jay神2 小时前
【计算机毕业设计】基于Flask+Vue的电影数据可视化与智能推荐系统
前端·vue.js·python·信息可视化·flask·毕业设计·课程设计
FreeTinker8 小时前
HTML本地存储技术解析:localStorage与sessionStorage的原理、差异与应用场景
前端·html
qq_452396238 小时前
第十二篇:《全链路监控与可观测性:前端错误追踪与性能分析》
前端
wangruofeng9 小时前
Phosphor Icons 官网源码拆解:URL 即存储、水波动画与 7362 Star 图标库的架构实践
前端·架构·github
BigTopOne10 小时前
WebRTC Native / Android 开发学习资源整理
前端