Npm link专门用于开发和调试本地Npm模块,能做到在不发布模块的情况下,把本地的一个正在开发的模块的源码链接到项目的node_modules目录下,让项目可以直接使用本地的Npm模块。 由于是通过软链接的方式实现的,编辑了本地的Npm模块代码,在项目中也能使用到编辑后的代码。

    简单使用

    我们先在一个目录下新建我们的开发模块ccc-loader,里面放入index.js(里面随便放入什么内容)和package.json,其中package.json内容如下:

    1. {
    2.   "name": "ccc-loader",
    3.   "version": "1.0.0",
    4.   "description": "",
    5.   "main": "index.js"
    6. }

    新建好的目录结构如下:

    通过命令行,进入ccc-loader,执行npm link命令,得到结果如下:

    注意看最后一行,箭头后面是ccc-loader的真实路径,前面是ccc-loader注册到全局模块后的路径,这两者已经关联上了,表示本地模块已经成功注册到了全局上。

    现在进入我们需要ccc-loader模块的项目(项目中已经存在node_modules目录):

    执行npm link ccc-loader:

    undefined

    最前面的路径是项目路径node_modules,中间是模块全局位置, 最后是真实项目路径,现在它们三者已经关联上了:

    现在我们在真实路径上修改了东西,那么映射文件夹也会跟着改变。

    解除关联

    解除项目和模块link,项目目录下,npm unlink 模块名

    解除模块全局link,模块目录下,npm unlink 模块名

    回到顶部
    我要评论

    所有评论

      相关文章