【发布时间】:2020-07-29 16:34:54
【问题描述】:
我正在尝试将模块导入为import Something from "@module",但它返回了
找不到模块“@config”
“@module”是“./src/utils/module”的别名
“app.ts”
import 'module-alias/register';
import Something from '@module';
"/utils/module.ts"
export enum Something {
CONSTANT = 'constant'
}
“package.json”
{
"name": "crawler",
"version": "1.0.0",
"description": "",
"main": "app.js",
"scripts": {
"dev": "nodemon ./src/app.ts",
},
"author": "",
"license": "ISC",
"devDependencies": {
"@types/node": "^13.11.1",
"nodemon": "^2.0.3",
"ts-node": "^8.8.2",
"typescript": "^3.8.3"
},
"dependencies": {
"module-alias": "^2.2.2"
},
"_moduleAliases": {
"@module": "./src/utils/module"
}
}
“tsconfig.json”
{
"compilerOptions": {
"baseUrl": ".",
"module": "commonjs",
"esModuleInterop": true,
"target": "es6",
"lib": [
"es6"
],
"outDir": "dist",
"noEmitOnError": true,
"sourceMap": true
},
"include": [
"src/**/*.ts"
],
"paths": {
"@module": [
"./src/utils/module"
]
},
"exclude": [
"node_modules"
]
}
为什么import "@module" 和const Something = require('@module') 工作正常,而import Something from "@module" 返回找不到模块错误?
这是项目结构:
- crawler
|-- src
-- app.ts
|-- utils
-- module.ts
【问题讨论】:
-
"paths"应该在"compilerOptions"部分,而不是在根目录中 -
难以置信...花了 2 个小时在这件事上,但没有检查
compilerOptions部分!您应该发表您的评论作为解决方案。 -
是的,很遗憾,
tsconfig没有被编译器检查冗余/额外属性
标签: javascript node.js typescript import