2016-03-05 1 views
24

生産のためのプロジェクトのコンパイル済みソースコードを縮小しようとしています 私はGulpをタスクランナーとして使用しています。コンパイルされたアンギュラ2のコンポーネントをどのように組み合わせるか?

ファイルは次のようになり、ソース、

<!--... . . various scripts and styles . . . . . ---> 
<script src="node_modules/angular2/bundles/angular2.dev.js"></script> 
<script src="node_modules/angular2/bundles/router.dev.js"></script> 
<script src="node_modules/angular2/bundles/http.dev.js"></script> 

<script> 
    System.config({ 
    packages: {   
     app: { 
     format: 'register', 
     defaultExtension: 'js' 
     } 
    } 
    }); 
    System.import('app/main') 
     .then(null, console.error.bind(console)); 
</script> 
</head> 
<body> 
    <app></app> 
</body> 

私のアプリのディレクトリ構造は以下のとおりである

HTML、

. 
├── main.js 
├── main.js.map 
├── main.ts 
├── main.app.js 
├── main.app.js.map 
├── main.app.ts 
├── x.component1 
│   ├── x.component.one.js 
│   ├── x.component.one.js.map 
│   └── x.component.one.ts 
└── x.component2 
    ├── x.component.two.js 
    ├── x.component.two.js.map 
    └── x.component.two.ts 

アプリ/ main.ts

import {bootstrap} from 'angular2/platform/browser'; 
import {MyAwesomeApp} from './main.app' 

bootstrap(MyAwesomeApp); 

その後、main.app.ts

@Component({ 
    selector: 'app', 
    template: ` 
     <component-1></component-1> 

     <component-2></component-2> 
    `, 
    directives: [Component1, Component2] 
}) 


export class MyAwesomeApp { 

} 

部品、

@Component({ 
    selector: 'component-1', 
    template: ` 
     Lorem ipsum dolor sit amet, consectetur adipisicing elit. Beatae ducimus, saepe fugit illum fuga praesentium rem, similique deserunt tenetur laudantium et labore cupiditate veniam qui impedit, earum commodi quasi sequi. 
    ` 
}) 


export class Component1 { 

} 

@Component({ 
    selector: 'component-2', 
    template: ` 
     Lorem ipsum dolor sit amet, consectetur adipisicing elit. Beatae ducimus, saepe fugit illum fuga praesentium rem, similique deserunt tenetur laudantium et labore cupiditate veniam qui impedit, earum commodi quasi sequi. 
    ` 
}) 


export class Component2 { 

} 

すべて活字体ファイル

がES5 JavaScriptにダウンしてコンパイルされ、さらにに縮小さする必要がありますmain.js

ので、私の質問は、

  1. は、私は一つのファイルに縮小化し、生産ブランチのmainとしてそれを参照するすべてのコンパイル済み.jsファイルを収集するタスクを実行できていますか?
  2. これはモジュールシステムのインポート{x}を 'y'から壊しますか?
  3. モジュールロードシステムが壊れた場合、Angular 2アプリケーションでファイルを連結するにはどうすればよいですか? 1.8.2

私の活字体のバージョンがあるが、任意の助けてくれてありがとう。

+1

大きな質問です! – user65439

答えて

関連する問題