Angular2 バンドルのように、Typescript アプリを SystemJS モジュールとしてパッケージ化する簡単な nodejs スクリプトを作成したいと考えています。
さまざまな構成を試しましたが、指を置くことができないようで、まだ十分に明確なドキュメントが見つかりません。
この「テスト」では、当分systemjs-builder
の間、Gulp や Jspm をまったく使用していないことに注意してください (jspm を使用する予定もまったくありません)。
私の「プロジェクト」は次のようになります。
---- プロジェクトのルート
-------- index.ts //export * from './modules/index'
そして最終的にはもっと
-------- モジュール
------------ index.ts //export * from './menu/index'
------------ メニュー
---------------- menu.component.ts //export class
---------------- menu.service.ts //export class
これを単一のファイルの下にパッケージ化したいと思います。このファイルには、その後アプリで使用できる複数の SystemRegister モジュールがあります。
私は成功せずに次のことを試しました:
var Builder = require('systemjs-builder');
// optional constructor options
// sets the baseURL and loads the configuration file
var builder = new Builder('./modules');
builder.bundle('./modules/index.ts', {
/* SystemJS Configuration Here */
baseURL: './modules',
transpiler: 'typescript',
typescriptOptions: {
"module": "system",
"emitDecoratorMetadata": true,
"experimentalDecorators": true
},
defaultExtension: 'ts',
packages: {
'modules': {
defaultExtension: 'ts'
}
}
}, 'infrastructure.js')
.then(function() {
console.log('Build complete');
})
.catch(function(err) {
console.error(err);
})
まず、オプションがまったくdefaultExtension
機能していないようです。import {something} from 'filePath';
filePath
filePath.ts
第 2 に、インポートに拡張機能を追加しようとすると.ts
(これはやりたくありません)、コードが無効であると不平を言います (unexpected token @
などunexpected token menuItem
) 。
これがどのように機能するかについて、誰かが良い例や説明を持っていますか?
ありがとうございました