我正在从Angular2 Documentation开始研究Angular 2 RC-6。我发现原子太慢,无法编译我的'.ts'文件。如果我将tsconfig.json从根文件夹移动到任何其他目录,它会快速编译,但会错过某些DI,例如'rxjs / add / operator / toPromise'。
请建议如何快速编译原子,或对tsconfig.json进行任何修改。
我的项目目录结构如文档中所述。
这是我的tscongig.json文件
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
}
}
答案 0 :(得分:10)
像Daniel说的那样你只需要排除几个文件夹。主要是node_modules
文件夹,因为那里有大量的TypeScript和Javascript文件。
您可以向exclude
添加以下tsconfig.json
选项:
"exclude": [
"node_modules",
"typings/main",
"typings/main.d.ts"
]
将此添加到您当前的配置中,它将如下所示:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
},
"exclude": [
"node_modules",
"typings/main",
"typings/main.d.ts"
]
}
答案 1 :(得分:1)
我在这里添加此内容以防其他人遇到与我相同的问题。
我尝试按照rinukkusu的回答中的建议排除 node_modules 文件夹,但这最终完全打破了编译器(Atom 1.12.9,Atom-Typescript 10.1.13)。
经过一些拔毛后,我添加了 include 选项,看看会发生什么。 documentation并没有具体说两者都是必需的,但似乎解决了这个问题。
所以在我的情况下,配置看起来像这样:
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false
},
"include": [
"app/**/*"
],
"exclude": [
"node_modules",
"typings/main",
"typings/main.d.ts"
]
}