2016-09-06 4 views
0

に動作します。Angular2アプリケーションは、唯一の私は多くのチュートリアル(<a href="https://angular.io/guide/quickstart" rel="nofollow noreferrer">https://angular.io/guide/quickstart</a>)</p> <p>このAngular2コンポーネントはより大きなアプリケーションでのモーダルの内部で実行中のようなシンプルなAngular2コンポーネントを作ったのは初めて

これは、モーダルの内容です:初めてのモーダルを開くとき

<script> 
    System.import('my-app') 
</script> 

<my-app>Loading...</my-app> 

アプリケーションにのみ機能します。コンテンツを消去してSystem.import('my-app')を再度実行すると、何も起こりません(エラーはなく、<my-app>Loading... </my-app>は表示されたままです)。

ページを更新した後でのみ動作します。

どのように同じAngular2モジュールをもう一度起動しますか?

+0

スクリプトが再度実行されていますか?プランナー上でアプリケーションの最小限のサンプルを再現できますか? – yurzui

+0

@yurzuiそれでは、SystemJSに以前にインポートしたものをインポートするように頼んだら、それは*機能するはずですか? –

+0

2回目のインポートがうまくいかないと思います。たぶんあなたは、window.fireNg2のようなあなたのangular2アプリケーションを実行するグ​​ローバル関数のようなものを使用する必要があります – yurzui

答えて

0

私自身の質問に答えるには、my-appはエクスポートを公開しないという問題があります。約束キャッチ(

<script> 
    System.import('my-app') 
      .then(function(main) { 
       main.default(); 
      }); 
</script> 

<script> 
    System.import('my-app'); 
</script> 

:から

import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; 

import MyAppModule from './my-app.module'; 

export default function main() { 
    platformBrowserDynamic().bootstrapModule(MyAppModule); 
} 

そして、初期化コードに

import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; 

import MyAppModule from './my-app.module'; 

platformBrowserDynamic().bootstrapModule(MyAppModule); 

:私はからmain.tsを調整しなければなりませんでした簡潔さのためにコード省略)

関連する問題

 関連する問題