2016-10-04 2 views
0

私は次の@ typescriptですとNGCを使用して、私のイオン2 RCアプリをコンパイルしようとしている:イオン2:NGCコンパイルが失敗した(メタデータ、ソースファイルがWriteFileCallbackに渡される必要が発する)

[[email protected] app2] $ ./node_modules/.bin/ngc -p tsconfig.json 
Error: Metadata emit requires the sourceFiles are passed to WriteFileCallback. Update to TypeScript ^1.9.0-dev 
    at MetadataWriterHost.writeFile (/home/ben/blindmate/app2/node_modules/@angular/tsc-wrapped/src/compiler_host.js:97:23) 
    at Object.writeFile (/home/ben/blindmate/app2/node_modules/typescript/lib/typescript.js:58205:132) 
    at Object.writeFile (/home/ben/blindmate/app2/node_modules/typescript/lib/typescript.js:8508:14) 
    at printFile (/home/ben/blindmate/app2/node_modules/typescript/lib/typescript.js:55459:16) 
    at emitFile (/home/ben/blindmate/app2/node_modules/typescript/lib/typescript.js:55409:21) 
    at onSingleFileEmit (/home/ben/blindmate/app2/node_modules/typescript/lib/typescript.js:8415:13) 
    at Object.forEachTransformedEmitFile (/home/ben/blindmate/app2/node_modules/typescript/lib/typescript.js:8392:21) 
    at Object.emitFiles (/home/ben/blindmate/app2/node_modules/typescript/lib/typescript.js:55392:12) 
    at emitWorker (/home/ben/blindmate/app2/node_modules/typescript/lib/typescript.js:58256:33) 
    at /home/ben/blindmate/app2/node_modules/typescript/lib/typescript.js:58219:66 

私はtypescriptですを変更することはできません私はasync/awaitのサポートが必要です。エラーメッセージが示すように[email protected]をインストールせずにこのエラーを修正する方法はありますか?

私のTSconfigは、次のようになります。

{ 


"compilerOptions": { 
    "allowSyntheticDefaultImports": true, 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "lib": [ 
     "dom", 
     "es2015" 
    ], 
    "module": "es2015", 
    "moduleResolution": "node", 
    "target": "es5" 
    }, 
    "exclude": [ 
    "node_modules", 
    ".tmp", 
    "src/app/main.prod.ts" 
    ], 
    "compileOnSave": false, 
    "atom": { 
    "rewriteTsconfig": false 
    } 
} 

答えて

1

私は同じことを模索してきた、とイオン2 RC0で使用される少なくともバージョン角2 AOTコンパイラは、ないかのようにそれはそうこの時点でTypeScript 2.1のプレリリースビルドと正確に互換性があります。

Ionic 2 RC0で使用されているバージョンであるTypeScript 2.0に戻すと機能します。あなたは非同期/待つ必要はありませんが、実際にはありません async/awaitは、明示的にプロミスを作成して消費することによって同じコードを書くことができるためです。それは、簡潔で表現力豊かではありません。 :)つまり、私は async/aswaitと思っていて、できるだけ早くこれを動作させることに興味があります。

関連する問題