文章详情页
angular.js - Angular中关于控制器编写方式的问题
浏览:246日期:2024-10-03 09:19:03
问题描述
我是Angular初学者,在学习中有个关于定义控制器的写法问题。
在刚接触的时候,书上是这样写控制的:
var myApp = angular.module(’MyApp’, []);myApp.controller(’MyController’, function($scope){ // todo...})
后来在一些网络上的文章,是这样写的:
var myApp = angular.module(’MyApp’, []);myApp.controller(’MyController’, [’$scope’, function($scope){ // todo...}]);
那么问题来了,后者加了个[],是个什么意思?这两种写法有什么不同呢?
在练习中发现同样的实现用这两种都可以。
问题解答
回答1:第二种写法叫inline-annotation,看文档依赖注入

这种写法的主要目的是为了避免源码压缩(uglify)时变量名被替换,导致依赖注入失败的问题。
如果对实现有兴趣,可以看手写依赖注入
回答2:是要注入的依赖,这种写法利于以后的代码压缩
相关文章:
1. angular.js - angular内容过长展开收起效果2. nignx - docker内nginx 80端口被占用3. docker - 如何修改运行中容器的配置4. angular.js - angularjs的自定义过滤器如何给文字加颜色?5. debian - docker依赖的aufs-tools源码哪里可以找到啊?6. docker - 各位电脑上有多少个容器啊?容器一多,自己都搞混了,咋办呢?7. mac里的docker如何命令行开启呢?8. 为什么我ping不通我的docker容器呢???9. 数据库 - mysql中怎样修改带点的字段名的位置?10. golang - 用IDE看docker源码时的小问题
排行榜

网公网安备