angular 控制器$scope依赖注入的正确写法
<div ng-controller="ctrl">
{{name}}
{{age}}
<div ng-controller="secondCtrl">
{{name}}
{{age}}
</div>
</div>
//这种定义作用域的方法有问题
<script type="text/javascript">
var app = angular.module('myapp',[]);
app.controller('ctrl',function($scope,$rootScope){
$scope.name = "张三",
$rootScope.age = 30
});
app.controller('secondCtrl',function($scope){
// $scope.name = "李四"
})
</script>
var app = angular.module('myapp',[]);
//打包的时候会将$scope用任意变量名代替,但是打包压缩的时候,不会打包字符串
//,在angular里面$scope 不能改变
app.controller('ctrl',['$scope','$rootScope',function($scope,$rootScope){
$scope.name = "张三",
$rootScope.age = 30
}]);
app.controller('secondCtrl',function($scope){
// $scope.name = "李四"
})
angular.module()下面会有很多种方法
- 具体情况可以console.log(angular.module()),常用的方法有controllor / factory / run
- angular.module().run()
//run 初始化全局数据,只对全局作用域起作用
app.run(['$rootScope',function($rootScope){
$rootScope.sex ="男"
}])