Visual Studio Code无法解析angular的tsconfig路径

文件

我正在尝试使用buckets和tsconfigspaths选项导入一些服务,但是我无法使用angular和vscode相处。

如果对一个有效,对另一个无效,反之亦然...

我的情况似乎很简单:

  • src/app/services我有在index.ts中导出的​​服务
  • src/tsconfig.app.json就是这样:

{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/app",
    "types": [],
    "baseUrl": ".",
    "paths": {
      "services": ["app/services"]
    }
  },
  "exclude": [
    "test.ts",
    "**/*.spec.ts"
  ],
}

我的角度应用程序编译没有问题,但vscode保持给我的错误每次我试图从导入我的服务时间'services'给我[ts] Cannot find module 'services'.

为什么?

我正在使用打字稿3.1.6并在vscode设置中使用"typescript.tsdk": "C:/Users/myuser/AppData/Roaming/npm/node_modules/typescript/lib"(我也尝试过保留默认设置,没有任何更改)


编辑:

如果我指定paths./tsconfig.json无法启动src,vscode是幸福的,但角度不是。

如果我pathstsconfig.json中都指定src/tsconfig.app.json,则vscode和angular都满意,但是对我来说似乎太愚蠢了。

文件

我想通了,即使我一直认为这很荒谬...

VsCode会自动查找tsconfig.json文件,它不会在乎tsconfig.app.json,因此paths需要在中指定tsconfig.json

同时,clicli-cli脚手架指定了一个baseUrl参数,tsconfig.app.json参数将覆盖上面参数

解决方案是删除中的baseUrl参数tsconfig.app.json 或将其值编辑为"../"

(作为个人评论,鉴于vscode主要用于构建角度解决方案,我认为应该在angular-cli脚手架或vscode查找tsconfig文件的方式中进行一些修改)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章