2015-06-09 70 views
0

我在ExtJS的系統中的SPA。我還包括我想在頁面上使用的角度和必要的模塊(外部html在extjs面板中引用)。角不能識別動態加載的頁面在ExtJS的

角被定義和工作無處不在,除了新加載PAGE電泳的問題是,我需要(重新)加載在每個頁面加載的角度,以讓我的網頁通過角認可。如果我每次加載它,everythink工作。

我怎麼能保證我的動態網頁是由角自動識別?

我的HTML:

<div ng-controller="MainCtrl"> 
    {{3+3}} and {{n}} <br> 
</div> 
+0

這聽起來可能很傻(因爲我沒有使用過ExtJS的自己),但這些新的頁面是如何加載究竟?你可以使用[$ compile](https://docs.angularjs.org/api/ng/service/$compile)服務來編譯你的html嗎? –

+0

你試過'angular.bootstrap()'嗎? https://docs.angularjs.org/guide/bootstrap –

+0

你可以選擇extjs中的「forms」來加載某個div。我已經定義了要加載的窗體中的面板,並且在該面板中,我可以定義內嵌html或引用外部html文件(分別使用函數「html」和「loader」)http://docs.sencha.com/ extjs/4.1.3 /#!/ api/Ext.panel.Panel。而且,我在加載頁面後試過bootstrap。沒有任何結果。對於$ compile,我不確定我應該如何在我的情況下使用它。 – Asqan

回答

0

angular.bootstrap()是解決辦法。

事情你必須要關心的:

  • 你應該無處使用NG-應用
  • 你應該包括jQuery的明確
  • 你可以把引導在面板的AfterRender階段,如:

    listeners : { 'afterrender' : { fn : function (panel, par2, par3) { angular.bootstrap($('#idOfYourAngularCode'), ['A']); }, scope : this } }

  • 如果你想使用外部html,你可以定義你的「bootstrap」a也可以在你的HTML文件中(通過使用腳本標籤)。但是,如果您在面板中使用html內嵌(像我一樣),這是最合適的方式。