我一次只处理几个NPM模块 - 有一个主模块可以导入另外三个模块。我已经使用npm link
将其他模块链接到主模块,但是我使用Babel来编写所有模块以转换源代码。当我构建其中一个模块时,我运行npm run build
运行转换,并将模块src
目录中的文件编译到其lib
目录。但是,因为每个模块都是' package.json文件指定主文件位置为lib/index.js
这意味着对于链接模块出现更新到我的主模块,我总是需要构建它。
有没有办法(使用npm link
时)将其链接到src
目录而不是lib
目录?如果失败了,是否有更好的方法来实现我想要的 - 在主模块中立即反映链接模块代码的更新?
答案 0 :(得分:0)
1)解决此问题的一种简单方法是在开发时临时更改库模块package.json
中的入口点:
/* library-module/package.json */
{
"main": "src/index.js",
...
}
现在无论你npm link library-module
,你应该加载图书馆模块src/index.js
2)或者,您可以设置监视任务,以便在检测到lib
中的更改后始终构建到src
。这样,您的新更改将始终反映在您的消费模块中。