我正试图编写一个不和谐的机器人,但我似乎遇到了设置类型记录配置/路径的障碍。尽管编译器声称它可以找到我的文件,但build命令npm运行build,无法找到我的模块,并崩溃。
我的文件夹结构:
|src
>|startup
>|StartupManager.ts
|-app.ts
|-package.json
|-tsconfig.json由于这里有一些移动的部分,我将概述我所拥有的以及我试图解决的错误:
tsconfig.json:
...
"baseUrl": ".",
"paths": {
"bot/*": [ "./src/*" ]
}
...app.ts (抱怨文件)
import { StartupManager } from 'bot/startup/StartupManager';
export { StartupManager };
new StartupManager();我的构建命令:
"build": "tsc --build && tsc app.ts && node app.js",在StartupManager中:
import { ILogger, Logger } from 'bot/core/logger';
export class StartupManager {
...
}目前,我正在编写VisualStudio2019社区版。为了重新迭代,我的文本编辑器显示一切都很好,但是当构建开始的时候,我受到了欢迎:
app.ts:1:32 - error TS2307: Cannot find module 'bot/startup/StartupManager'.
1 import { StartupManager } from 'bot/startup/StartupManager';
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Found 1 error.有人能给我什么建议吗?
发布于 2020-05-11 20:22:36
在“打字手册”中的这个页面中:当在命令行上指定输入文件时,tsconfig.json文件将被忽略。
因此,当您运行tsc app.ts时,它不知道在tsconfig.json中设置的路径属性。您可能只想运行tsc --build,因为这会编译包括app.ts在内的文件。
关于paths属性,可能仍然需要安装一个额外的包来运行使用模块导入中的速记路径的.js文件。有一些NPM包,如tsconfig-路径,可以帮助这一点。
https://stackoverflow.com/questions/61736891
复制相似问题