角documentation for the angular.bootstrap(...)
method說,第二個參數是:爲什麼自舉* *多個角模塊到*單個*元件
...一個陣列模塊的加載到該應用程序。陣列中的每個項目應該是一個預定義的模塊的名稱或(DI註釋)
我從未見過其穿過的多於一個模塊中進行boostrapped到相同的DOM元素角的代碼。 .. 你爲什麼想這麼做?有角度的教程不提供示例。所以我在StackOverflow上找到了this example。這個例子既自舉和peopleApp
到thermostatApp
文件:
angular.bootstrap(document, ['peopleApp','thermostatApp']);
如果這些應用程序有一個控制器相同的名稱,會發生什麼?像MyCtrl
?哪個定義受到尊重?
如何對多個模塊進行boostrapping;不是創建一個新ConsolidatedModule
,其中有依賴到一個或多個模塊你會一直boostrapped,然後就自舉單ConsolidatedModule
不同?即
angular.module('ConsolidatedModule', ['peopleApp', 'thermostatApp']);
angular.bootstrap(document, ['ConsolidatedModule'])
要清楚,我不是在談論自舉separate apps to separate DOM elements.(也顯示here)
其他傳聞,這讓我感到困惑的是:
你
can'tshouldn't (?) bootstrap an app within another already bootstrap'd app(。 ..因爲「遍歷它的方式通過DOM和se分配範圍綁定並執行指令鏈接功能。如果你這樣做了兩次,你會遇到的問題「
- 然而,有兩個模塊不會,遇到問題)
- 在Angular2自舉同一個元素? ,
platformBrowserDynamic.bootstrapModule(...)
是單數,意味着其只接受一個參數(我找不到API),所以我更糊塗了什麼意味着角1 *來引導多個模塊相同DOM節點。
*如何boostrapping多個模塊;不同於創建新的ConsolidatedModule *:沒有區別,並且適用於名稱衝突的相同規則。 –
據我所知,用這種結構設計應用程序沒有任何實際的理由。如果你需要處理的是其他人提供的最小化模塊,那麼*可能是一個有用的理由。但是,正如文件在多個地方所暗示的那樣,框架不會「根據這種情況進行主動測試」。 – Claies
我會懷疑bootstrap代碼完全支持這一事實很可能是一個遺留的工件,它不值得去除,但在框架的改造中甚至沒有考慮到。 – Claies