簡體   English   中英

angularJS $作用域變量

[英]angularJS $scope variables

我的$ scope angularJS中有兩種類型的變量。

1)。 $ scope.name,$ scope.title-這些綁定到兩個輸入框(這些綁定到UI html代碼)。

2)。 $ scope.sum,$ scope.difference-這些變量在JS代碼內部使用,我需要它們像全局變量一樣,以在不同的函數中訪問。

問題:-是$ scope。$ watch函數將針對第二種情況的變量運行,是這些類型的變量對我的頁面性能產生了任何不良影響。

$ scope中的變量可通過控制器的out(在diff函數中)進行訪問。 如果要在其他控制器中使用這些變量,則可以使用服務/工廠在diff控制器中共享作用域變量。

這取決於你的表情。 但是,永遠不要看守昂貴的表達方式,因為angularjs會多次評估,並且必然會對您的應用程序性能產生非常不利的影響。

通常,有性能問題時有必要優化您的應用程序。 在大多數情況下,一切都進行得很好,並且不必要地不必要地使應用程序復雜化。

另外,您可以使用單向數據綁定 ,其中表達式以::開頭。 在第一個摘要之后,表達式一旦穩定就會停止重新計算。

如果這些功能與角度無關,您可以使用以下命令:在頁面中聲明一個全局變量並將其值分配給該模態

app.controller('MainCtrl', function($scope) {
  $scope.name = 'World';
  $scope.globalVariable = "something";
  globalVariable = $scope.globalVariable;
});

var globalVariable;

function externalFunction(){
  alert(globalVariable);
}

這是Plunker

如果這些功能在另一個控制器內部,則可以使用服務或工廠在控制器之間共享信息。有關服務和工廠的信息,請參閱此鏈接

AngularJS:工廠和服務?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM