npm link only dist folder

安稳与你 提交于 2021-02-08 13:21:58

问题


Is there a way to restrict npm link to create the symlink only to point at ./dist?

I am struggling so far as I want to test my library (react component) locally before publishing.

In my package.json I have included the main (entry point):

"main": "./dist/index.js"

But still when I run npm link it links to the parent folder which has node_modules and so on. This is causing problems cause now I have 2 react apps installed.

I thought of a way to exclude node_modules but I couldn't even find a way to do that.


回答1:


This is actually simpler than expected. First run ng build to build your library project, then go under the dist folder and run npm link from there instead of the library root project. The symlink will be created pointing to the dist folder instead.




回答2:


Using "main" parameter doesn't make sense because npm link use 'npm prefix' for create symlink see here

You can use next hack:

  1. Cd to project directory
  2. Copy package.json from package to ./dist/package.json directory
  3. Cd to dist directory
  4. Run 'npm link'

It looks dirty but seem to only way to do it with npm link



来源:https://stackoverflow.com/questions/59446361/npm-link-only-dist-folder

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!