Intellij不断编译TypeScript(非常慢) - 如何阻止这种行为?

时间:2016-11-13 02:22:21

标签: angularjs intellij-idea typescript gulp

我正在将Angular 1.x项目从vanilla JS迁移到TypeScript。但是,我的IDE响应时间非常慢。Constant compiling of many files

如果我取消选中“设置”中的“跟踪更改”>语言与框架> TypeScript,编译停止 - 但我当时处于我的TS无法编译的位置!

当然,我可以配置gulp文件并设置一个在更改时重新编译文件的观察程序。但是,如果可能的话,我想避免为每个项目运行gulp。此外,更重要的是,取消选中“跟踪更改”会删除特定于TS的建议,并且似乎会破坏某些引用。

跟踪更改:已选中 - 帮助+参考 Help + References

跟踪更改:未选中 - 无帮助+参考已损坏 No help + References broken

问题#1:

是否可以配置Intellij,使其仅编译已更改的文件?

问题#2:

为什么Intellij会编译这么多文件? 这是我的tsconfig.json的副本:

{
  "compilerOptions": {
    "module": "system",
    "noImplicitAny": false,
    "removeComments": true,
    "preserveConstEnums": true,
    "outFile": "build/local/tsc.js",
    "sourceMap": true,
    "typeRoots": [
      "./node_modules/@types",
      "./typings"
    ],
    "moduleResolution": "node"
  },

  "exclude": [
    "client/src/node_modules",
    "**/*.spec.ts",
    "src/bower_components",
    "client/src/bower_components",
    "client/src/node_modules",
    "build",
    "Saved_HTML",
    "site-ideas",
    "node_modules",
    "client/typings"
  ]
}

请注意,尽管将node_modules设置为忽略目录,但编译器仍然在那里。 enter image description here

1 个答案:

答案 0 :(得分:1)

问题1:

IntelliJ非常频繁地保存文件。在保存文件时,Typescript会编译。因此,你应该disable or limit autosave

问题2:

我不知道为什么排除文件并不适合你,但我建议包括"rootDir": "./yourSourceDir"而不是排除其他文件。