我有一个带有全局变量的应用程序(实际全局变量,而不是 $rootScope
)。我需要使用 {{ }}
表达式将它打印到 View 中。我怎样才能将当前 Controller 的 $scope
变量关联到这个全局变量,这样我总能在屏幕上打印出这个全局变量的最新值。
编辑:代码:
app.controller('placesCtrl', ['$scope','$rootScope',function($scope, $rootScope){
$scope.place = place;
}]);
var autocomplete,map,place = {};
place.name = "asdf";
function initAutocomplete() {
...
//Initialize google maps autocomplete
//Add event listener
autocomplete.addListener('place_changed', function() {
//update place
place = autocomplete.getPlace();
console.log(place);
if (!place.geometry) {
window.alert("No such city found!");
return;
}
});
}
最佳答案
如果 myGlobal
是一个对象,对它的简单引用就足够了:
$rootScope.myGlobal = myGlobal;
现在,如果它是一个原始值,例如字符串或数字(或者如果您更改对象的引用),您可以对其使用闭包:
$rootScope.getMyGlobal = function() { return myGlobal; }
然后在你的 HTML 中写:
<div>{{getMyGlobal()}}</div>
关于javascript - 使用 Angular 在 View 中打印全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37034478/