javascript - 使用本地模块,使用本地依赖

标签 javascript node.js typescript npm

我正在尝试包含一个本地库,所以我遵循这些 2 个教程:how to create library , how to consume local library .所以,我有一个很好的示例库(它有 package.json、index.ts 等),我尝试将它包含在我的主项目中(npm link 工作正常,我可以看到一个符号链接(symbolic link)我的库),但我不能从我的主项目中引用它。

import { HelloWorld } from "my-test-lib"; // "Cant find module"

另外,我尝试通过 npm install ../libs/my-test-lib 安装它,但结果相同:“找不到模块”。关于如何将它包含到我的项目中的任何建议?

PS:我更喜欢 npm install 之类的东西,所以我可以将此更改提交到存储库(与 npm 链接 相反)。

编辑(为什么不重复):在 how to specify local modules as npm package dependencies不清楚该走哪条路:由于上述原因, "bar":"file:../foo/bar"npm link 都不适合我.

EDIT2:好的,我在 package.json 中尝试过 "preinstall": "npm ln my-test-lib ../libs/my-test-lib"。然后 import { HelloWorld } from "my-test-lib";。仍然是相同的错误“找不到模块”。会不会是包裹本身有问题?

EDIT3:所以是的,这个问题的重点是弄清楚为什么

// package.json
"dependencies": {
  "my-test-lib": "file:../lib/my-test-lib"
}

// ts file
import { HelloWorld } from "my-test-lib";

不工作。想知道,我该如何调试。

最佳答案

import defaultExport from './local-file'

或者

import { namedExport } from './local-file'

关于javascript - 使用本地模块,使用本地依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46818083/

相关文章:

node.js - npm 安装失败,因为 node-gyp 失败。怎么修?

Angular 2,如何在全局范围内激活路由?

javascript - JSON.解析 : unexpected non-whitespace character after JSON data

javascript - 客户端socket.id刷新?

javascript - 具有调整大小功能的 Javascript 函数的多个实例

javascript - 替换测试中的特定模块

node.js - Elastic beanstalk 上的 npm install 报告没有错误,但缺少依赖项

javascript - 保存后,nodemon 每隔一秒就会启动服务器并出现错误

node.js - 在 TypeScript 中导入 Node 模块

asp.net-mvc-4 - 如何编辑 Typescript 1.4 "specified task executable location"?