angularjs – 在Angular的run()方法中获取$scope对象

我想做一些东西,当我的应用程序加载设置认状态。所以我试图在Module对象上使用run方法。当我尝试访问$ scope变量,虽然我得到一个“未捕获的ReferenceError:$ scope未定义”消息在我的控制台。

请参见以下示例http://jsfiddle.net/F2Z2X/1/

app = angular.module('myapp',[]);

app.controller('mycontroller',function($scope){
    $scope.data = { myvariable: 'Hello' };
});

app.run(
    alert($scope.data.myvariable))
);

我会这样做错了吗?

例如,我想在开始时运行一次watchAction函数,以隐藏尚未调用的UI元素,但watchAction函数没有$ scope对象,因为它没有被watch方法调用,所以我不得不通过它,但唉,它不可用。

app.run(function ($rootScope) {
    $rootScope.someData = {message: "hello"};
});

您只能将$ rootScope注入到服务和运行函数,因为每个子作用域都从其父作用域继承,顶层作用域是rootScope。因为注入任何范围是不明智的。仅提供根范围。

相关文章

ANGULAR.JS:NG-SELECTANDNG-OPTIONSPS:其实看英文文档比看中...
AngularJS中使用Chart.js制折线图与饼图实例  Chart.js 是...
IE浏览器兼容性后续前言 继续尝试解决IE浏览器兼容性问题,...
Angular实现下拉菜单多选写这篇文章时,引用文章地址如下:h...
在AngularJS应用中集成科大讯飞语音输入功能前言 根据项目...
Angular数据更新不及时问题探讨前言 在修复控制角标正确变...