【发布时间】:2023-02-02 06:45:32
【问题描述】:
我有一个带有 typescript 设置的 nestjs 项目(显然我删除了与问题无关的东西)
我想做的是以下
在文件 data-basic-input.dto.ts 中,我按以下方式导入 data-type.enum.ts
`import { DataType } from '@shortcut/constants/enums/data-type.enum';`
data-type.enum.ts 包含以下代码
`export enum DataType {
L1 = 101,
H1 = 201,
L2 = 102,
H2 = 202,
L3 = 103,
H3 = 203,
L4 = 104,
}`
当我尝试构建和运行项目时,出现以下错误
ERROR in ./src/datas/dtos/data-basic-input.dto.ts 24:147-251 Module not found: Error: Can't resolve './c:/Projects/project/libs/constants/src/enums/data-type' in 'c:\Projects\project\src\alarms\dtos' @ ./src/alarms/dtos/data-input.dto.ts 17:32-66 ....
所以,当我尝试导入一个枚举时,它没有找到它......来自同一文件夹的其他导入工作正常
有趣的是,这个错误只发生在 Windows 上,我在 Mac 或 Linux 上试过,一切正常
附加信息:
nest-cli.json 的外观如下
为了使用这种类型的导入,我在 tsconfig.json 中进行了此设置
我安装了以下版本
- 打字稿 - 4.9.4
- Webpack - 5.75.0
- ts-loader - 9.4.2
- tsconfig 路径 - 4.1.1
任何能给我指明正确方向的想法都会受到欢迎 非常感谢
我尝试过但没有用的东西
- 重命名文件末尾没有枚举
- 尝试导出常量枚举数据类型,因此在枚举之外添加一个常量
- 尝试通过在 tsconfig.json 中设置“traceResolution”进行调试:true 但通过读取堆栈,我发现文件正在被找到并正确加载
- 各种不同的 tsconfig 或 webpack 选项
【问题讨论】:
标签: typescript webpack import enums nestjs