2013-11-01 22 views
0

按照說明here,我可以在IE中使用一個簡單的angularJS應用程序。在IE中製作角度應用程序

但是,我正在努力處理約束,您需要將id='ng-app' ng-app='some-module'添加到根(html)元素。該文檔的狀態:

「連同NG-應用屬性到根元素」

<!doctype html> 
    <html xmlns:ng="http://angularjs.org" id="ng-app" 
ng-app="optionalModuleName"> 
    ... 
    </html> 

「添加ID =」 NG-應用程序,但如何做這項工作,如果我的應用程序有多個模塊 - 這是一定是平常的?在我的場景中,我有一個表格模塊來處理可分頁的表格控件,並且我剛創建了一個模塊來處理顯示國家/地區標誌。

這個限制是否意味着我只能擁有一個模塊(uberModule),其中包含所有的模塊?似乎有點垃圾,或者我錯過了什麼?

免責聲明:我是一個角度小白所以它可能是我只是在做一些非常錯誤的

+0

你將在頁面上擁有多少'ng-app'屬性?超過一個? –

+0

我想是這樣的 - 我可以有一個既有table(tableModule)又有country標誌的頁面。你是說在角度上我應該只使用一頁? –

+0

通常,(在SPA中)每頁只有一個,因爲'ng-app'定義了一個'$ rootScope'。通常,您可以使用'ng-include'或路由來在單個'ng-app'內換出UI組件。 –

回答

2

通常情況下,只有在一個HTML文檔單ng-app描述in the docs

使用此指令可自動引導應用程序。每個HTML文檔只能使用一個ngApp 指令。該指令指定應用程序的根目錄 ,通常位於 頁面的根目錄。

在文檔中找到的第一個ngApp將被自動引導。至 在HTML文檔中使用多個應用程序時,您必須手動使用angular.bootstrap對其進行引導 。應用程序不能嵌套。

當然,如果你只有一個ng-app,再有就是具有單id屬性的值設置爲「NG-應用」沒問題。

雖然如上所述,您可以使用bootstrapping來管理頁面上的多個ng-app。由於手動引導不需要將ng-app屬性放置在頁面上,因此不應該有id屬性問題。

+0

我會把這個標記爲答案,因爲我最終遵循了你的建議並確保我是每個頁面始終只使用一個ng-app。採取了一些重構,但我最終有一個模塊,從其他模塊拉依賴關係,這似乎工作正常 –

+0

是的,我認爲你會沒事的。有點像拉你的應用程序所需的功能的不同命名空間。 –

相關問題