我想来测试我本地未发布的NPM源码,该怎么实现呢?接下来进行一步步的实现:
npm link
npm link
是一个非常有用的命令,可以让你在本地进行包的开发和测试,而无需发布到 npm registry。它通过创建符号链接,将一个本地包链接到另一个本地项目中。下面是一个完整的实例,演示如何使用 npm link 来测试本地未发布的源码。
接下来进行具体的操作步骤,创建两个项目文件夹
my-library:这是一个你正在开发的 npm 包。
my-program:假定这是一个使用了 my-library 的应用程序。
1. 准备 my-library 项目
cd my-library文件夹
然后npm init -y
初始化项目
然后在项目里面创建一个简单的 index.js 文件,内容自定义,导出有内容即可,参考:
// my-library/index.js
module.exports = function() {
console.log('Hello from my-library!');
};
2. 使用 npm link 链接 my-library
在 my-library 项目的根目录下,运行以下命令来创建全局链接,命令为:npm link
这个命令会将 my-library 链接到全局的 node_modules 目录中。命令执行后,你应该看到类似以下的输出:
可能不同的平台效果不一样。
3. 准备 my-program 项目
设置 my-program 项目,新建文件夹,命名为my-program
,然后命令cd ../my-program npm init -y
,在目录下面创建一个 index.js 文件,内容为:
// my-app/index.js
const myLibrary = require('my-library');
myLibrary();
4. 使用 npm link 链接 my-library 到 my-program
在 my-program 项目的根目录下,运行以下命令npm link my-library
。
这个命令会将 my-program 项目的 node_modules 目录中的 my-library 符号链接到 my-library 项目的实际位置。文件夹下面对多了个node_modules
目录,下面就是my-library包
5. 运行 my-program 并测试链接
现在你可以在 my-program 项目中运行 index.js,来测试从 my-library 导入的功能,node index.js
如果一切正常,你应该会看到以下输出:
Hello from my-library!
这个时候,你可以去npm源文件包更改index.js的内容,保存后,在项目目录重新执行index.js会发现内容也会变更。
6. 取消链接
如果你想取消链接,恢复到原始的状态,可以运行以下命令:npm unlink my-library
在 my-library 项目中,你也可以通过运行以下命令来删除全局链接:npm unlink
总结
这个过程展示了如何在本地开发和测试未发布的 npm 包。使用 npm link,你可以轻松地在本地多个项目之间共享代码,而无需每次更改后重新发布到 npm registry。最后,如果你的npm测试没问题了就可以正式发布了。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。