如何调试本地npm package

背景:

在不发布的情况下调试本地的npm包,有以下两种方式:

离线调试

此种模式适用于本地npm package 已经比较稳定,需要在项目中使用这个npm package。

在本地npm package项目中,使用npm pack创建一个tgz文件,这个文件是本地npm package的压缩包。

在另一个项目中,使用npm install命令加上tgz文件的路径来安装这个本地npm包。

例如:

bash 复制代码
# 在你的本地npm package目录下执行
$ npm pack
[package-name]-[package-version].tgz

# 在另一个项目中安装。 安装完成后,你可以在另一个项目中像使用任何其他npm包一样使用这个本地包。
$ cd workspace
$ npm install /path/to/[package-name]-[package-version].tgz

实时调试

此种模式适用于本地npm package 需要频繁调试的阶段,优点是不需要频繁打包重新安装,可以达到实时调试的效果。

可以在package.json中的scripts部分添加一个自定义命令,并在其中使用npm link。这样,你就可以在本地开发的同时,在任何项目中直接链接到你的npm包。

例如:

json 复制代码
// package.json中的scripts部分
{
  "scripts": {
    "dev": "ng serve",
    "link": "npm link"
  }
}

在你的npm包目录下运行npm run link,然后在项目中运行npm link [package-name]来创建一个全局链接。这样,你就可以直接在项目中使用本地npm包,并在开发过程中实时看到变化。

相关推荐
万少3 小时前
HarmonyOS 开发必会 5 种 Builder 详解
前端·harmonyos
橙序员小站5 小时前
Agent Skill 是什么?一文讲透 Agent Skill 的设计与实现
前端·后端
炫饭第一名8 小时前
速通Canvas指北🦮——基础入门篇
前端·javascript·程序员
王晓枫8 小时前
flutter接入三方库运行报错:Error running pod install
前端·flutter
符方昊8 小时前
React 19 对比 React 16 新特性解析
前端·react.js
ssshooter8 小时前
又被 Safari 差异坑了:textContent 拿到的值居然没换行?
前端
曲折8 小时前
Cesium-气象要素PNG色斑图叠加
前端·cesium
Forever7_8 小时前
Electron 淘汰!新的桌面端框架 更强大、更轻量化
前端·vue.js
Angelial8 小时前
Vue3 嵌套路由 KeepAlive:动态缓存与反向配置方案
前端·vue.js
jiayu9 小时前
Angular学习笔记24:Angular 响应式表单 FormArray 与 FormGroup 相互嵌套
前端