{
"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"
]
}
私はangular2/beta8アプリをRC1にアップグレードしようとしていますが、基本的にクイックスタートガイドに従って再構築することでアップグレードしています。
そのtsconfig.jsonをプロジェクトディレクトリにコピーしました。他のすべての準備ができていると思いますが、tsc
を実行すると、node_modulesフォルダー内のファイル内にあらゆる種類のエラーが発生します。そもそもなぜそこを見ているのか。
このアレックスへの答えを見つけたかどうかはわかりませんが、LDLのコメントで言及されている 質問/回答 は、SrikanthInjarapuによって提出された回答を提供します。
誰かがそのリンクに行きたくない場合の答えは次のとおりです。
ES5をターゲットにしている場合は、「node_modules/TypeScript/lib /lib.es6.d.ts」をtsconfig.jsonファイルに追加します。
{
"compilerOptions": {
"module": "commonjs",
"target": "es5",
"noImplicitAny": false,
"outDir": "built",
"rootDir": ".",
"sourceMap": false
},
"files": [
"helloworld.ts",
"node_modules/TypeScript/lib/lib.es6.d.ts"
],
"exclude": [
"node_modules"
]
}
[〜#〜]編集[〜#〜]
私のアプリケーションでは、webpackを使用してアプリをビルドしていますが、コンソールに同じエラーが表示されます。私は現在これを修正することを検討しており、見つけたものを報告します。
webpackを使用している人の場合、「exclude」プロパティを追加しても機能しませんでした。
代わりに、すべてのファイル拡張子をwebpackの「resolve」プロパティに追加し、動作する「ルール」オブジェクトからnode_modulesを除外します。
resolve: {
extensions: ['*', '.ts', '.tsx', '.js']
},
module: {
rules: [
{
test: /\.ts(x?)$/,
exclude: /node_modules/,
use: [
{
loader: "ts-loader"
}
]
},
// All output '.js' files will have any sourcemaps re-processed by 'source-map-loader'.
{
enforce: "pre",
test: /\.js$/,
exclude: /node_modules/,
loader: "source-map-loader"
},
]