![](/img/trans.png)
[英]I have two divs with the same ng-controller in AngularJS, how can I make them share information?
[英]How can I make two pages AngularJS share the same $scope?
我想在我的網站上使用angularJS。 但我想在幾頁中使用它。
問題是當有人試圖訪問這些頁面時,他們的行為就像兩個應用程序,因為$ scope與這些應用程序不同。 但我希望通過共享angularJS的相同內存空間將這些頁面用作相同的應用程序。
我怎樣才能做到這一點?
完全不同的頁面加載是不可能的。
但畢竟$ scope意味着一些數據。 您也希望為其他頁面啟用該數據。
您可以做的一件事是當您在頁面之間切換時,您可以將數據($ scope)傳輸到另一個頁面,並且該應用程序(頁面)可以初始化該數據。 然后它將作為共享相同的$范圍工作。 但如果您經常在頁面之間切換,這將是一個糟糕的方法。
一般答案是否定的。 但,
接收事件的瀏覽器的正常流程是它執行相應的JavaScript回調。 一旦回調完成,瀏覽器將重新呈現DOM並返回以等待更多事件。
因此,在重定向到不使用任何此范圍或子范圍的頁面后,垃圾收集器將回收javascript對象(范圍模型)。
因此,沒有簡單的方法可以做到這一點。 除了在重定向頁面時傳遞到新范圍的參數。
但是如果你找到了從范圍創建者停止$ scope.destroy()調用的方法,並將該DOM鏈接到另一個頁面的$ scope。 從概念上講這是可能的(但我不知道該怎么做)。 如果你迫切希望在這種方法中使用角度,那么你可以對此進行一些研究。
否則將$ scope參數或$ scope的必填字段傳遞給另一個應用程序。 那就做你想要的。 但正如@ Simon57所說; 如果你經常在應用程序之間切換,這將是一個糟糕的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.