Node.js npm链接模块列为未满足依赖项

Node.js npm链接模块列为未满足依赖项,node.js,npm,node-modules,Node.js,Npm,Node Modules,我正在链接my lib,以立即查看my app中的效果 cd my-lib-folder npm link cd ../my-app-folder npm link my-lib 这正如预期的那样有效。更改由my app拾取,我在node\u模块中看到符号链接。我的问题是,在我的应用程序文件夹/中,npm列表--link=true显示为空。如何获取链接模块的列表 npm ls my_lib my-app@3.1.0 /Users/path/my_project └── UNMET DEPEN

我正在链接
my lib
,以立即查看
my app
中的效果

cd my-lib-folder
npm link

cd ../my-app-folder
npm link my-lib
这正如预期的那样有效。更改由
my app
拾取,我在
node\u模块中看到符号链接。我的问题是,在
我的应用程序文件夹/
中,
npm列表--link=true
显示为空。如何获取链接模块的列表

npm ls my_lib
my-app@3.1.0 /Users/path/my_project
└── UNMET DEPENDENCY my-lib@3.7.0 

npm ERR! missing: my-lib@3.7.0, required by my-app@3.1.0

节点8和10以及它们各自的npm版本都会发生这种情况。

好的,我意识到
我的lib
是以某种方式全局链接的

 $ npm ls -g --link=true --depth=0
/Users/apth/.nvm/versions/node/v8.11.4/lib
└── my-lib@3.1.0 -> /Users/franzih/code/my-lib-folder
将其与
npm unlink-g my lib
解除链接并再次链接成功,现在显示为本地链接:

$ npm ls --link=true
my-app@3.1.0 /Users/path/code/my-app-folder
└─┬ my-app@3.7.0 -> /Users/path/.nvm/versions/node/v8.11.4/lib/node_modules/my-lib-folder
  ├─┬ https-proxy-agent@2.2.1
  │ ├─┬ agent-base@4.2.1
  │ │ └─┬ es6-promisify@5.0.0
  │ │   └── es6-promise@4.2.4
  │ └─┬ debug@3.1.0
  │   └── ms@2.0.0
  └── node-fetch@2.2.0
现在,
npmi
不再覆盖链接。一切都好

在我的例子中,“我的库”没有全局链接,但我必须:

  • 从“我的应用程序”中完全卸载它(
    npm卸载我的库
  • npm从“我的应用程序”链接我的库
    ,然后
  • 在“我的应用程序”中运行npm安装我的库
  • 其他每一个步骤的组合都不起作用,我也没有发现任何地方记录了卸载或重新安装。希望这能帮助其他遇到这个问题的人