我是 Typescript 和构建 Typescript 库的新手,但我遇到了问题:
@my-lib/my-first-lib
。@my-lib/my-second-lib
,它依赖于@my-lib/my-first-lib
。@my-lib/my-second-lib
,比如说,my-project
但是,当我尝试编译时,我收到以下错误消息:Module not found: Error: Can't resolve '@my-lib/my-first-lib/lib-es2015' in '/Some/path/to/my-project/node_modules/@my-lib/my-second-lib/lib-es2015/file-name-using-first'
tsconfig.json如下:
{
"compilerOptions": {
"allowSyntheticDefaultImports": true,
"noImplicitAny": true,
"module": "es2015",
"target": "es2015",
"lib": ["es2015", "dom"],
"declaration": true,
"outDir": "lib-es2015",
"sourceMap": true,
"strictNullChecks": true,
"moduleResolution": "node",
"resolveJsonModule": true,
"skipLibCheck": true,
},
"files": ["src/index.ts"],
"exclude": [
"node_modules"
],
"include": [
"src/**/*"
]
}
所有库都是通过以下命令编译的:
tsc -p tsconfig.json
如果我将
@my-lib/my-first-lib
作为依赖项包含在 my-project
的 package.json文件中,它就可以正常工作。但我认为这不是答案,因为如果
@my-lib/my-second-lib
有数千个依赖项,我必须包含数千个依赖项。
请有人给我指路。
将
@my-lib/my-first-lib
的 package.json文件中的
"devDependencies"
从 "dependencies"
移动到 @my-lib/my-second-lib
可以解决问题。