tsconfig.json 被 Visual Studio 代码忽略
tsconfig.json ignored by Visual Studio Code
我的项目根目录下有一个 tsconfig.json
文件:
{
"compilerOptions": {
"target": "ES5",
"module": "commonjs",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"sourceMap": true,
"noEmitHelpers": true,
"baseUrl": ".",
"paths": {
"services/*": ["./src/app/shared/services/*"]
}
},
"compileOnSave": false,
"buildOnSave": false,
"awesomeTypescriptLoaderOptions": {
"forkChecker": true,
"useWebpackText": true
}
}
我正在尝试定义我的路径,这样我们就不需要在项目中使用相对路径。
例如:
我正在尝试让 import { ConfigService } from 'services/config';
工作,而不是必须键入:
import { ConfigService } from '../../shared/services/config/';
但是当我尝试这个时,我在 webpack 中不断收到错误。
看起来它只是试图查看 /node_nodules
而忽略 tsconfig.json
?我说得对吗?
我真的不知道我做错了什么。谷歌搜索了几个多小时,快要疯了。
如有任何帮助,我们将不胜感激。
注意:实际上,你是对的,Webpack 不知道 tsconfig 文件,并尝试以自己的方式解析模块。为了将它与 tsconfig 一起使用,您需要一个 TsConfigPathsPlugin 插件。请参阅 github 上的 issue。
我认为您的路径 属性 设置不正确。你需要告诉打字稿是这样的:
对于匹配模式 "services/" 的导入,将以下路径附加到
导入(假设你的根目录是 src 之前的目录)“/src/app/shared/”
"paths": {
"services/*": ["/src/app/shared/*"]
}
因此,当编译器到达您的 "services/config" 导入时,它将匹配模式,然后创建此路径 "root/src/app/shared/services/config" 以尝试解决它。
查阅打字稿 module resolution 文档了解更多详情。
我的项目根目录下有一个 tsconfig.json
文件:
{
"compilerOptions": {
"target": "ES5",
"module": "commonjs",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"sourceMap": true,
"noEmitHelpers": true,
"baseUrl": ".",
"paths": {
"services/*": ["./src/app/shared/services/*"]
}
},
"compileOnSave": false,
"buildOnSave": false,
"awesomeTypescriptLoaderOptions": {
"forkChecker": true,
"useWebpackText": true
}
}
我正在尝试定义我的路径,这样我们就不需要在项目中使用相对路径。
例如:
我正在尝试让 import { ConfigService } from 'services/config';
工作,而不是必须键入:
import { ConfigService } from '../../shared/services/config/';
但是当我尝试这个时,我在 webpack 中不断收到错误。
看起来它只是试图查看 /node_nodules
而忽略 tsconfig.json
?我说得对吗?
我真的不知道我做错了什么。谷歌搜索了几个多小时,快要疯了。
如有任何帮助,我们将不胜感激。
注意:实际上,你是对的,Webpack 不知道 tsconfig 文件,并尝试以自己的方式解析模块。为了将它与 tsconfig 一起使用,您需要一个 TsConfigPathsPlugin 插件。请参阅 github 上的 issue。
我认为您的路径 属性 设置不正确。你需要告诉打字稿是这样的:
对于匹配模式 "services/" 的导入,将以下路径附加到 导入(假设你的根目录是 src 之前的目录)“/src/app/shared/”
"paths": {
"services/*": ["/src/app/shared/*"]
}
因此,当编译器到达您的 "services/config" 导入时,它将匹配模式,然后创建此路径 "root/src/app/shared/services/config" 以尝试解决它。
查阅打字稿 module resolution 文档了解更多详情。