angular.js - Angular中关于控制器编写方式的问题
阿神
阿神 2017-05-15 17:02:43
0
2
477

我是Angular初学者,在学习中有个关于定义控制器的写法问题。

在刚接触的时候,书上是这样写控制的:

var myApp = angular.module('MyApp', []);
myApp.controller('MyController', function($scope){
  // todo...
})

后来在一些网络上的文章,是这样写的:

var myApp = angular.module('MyApp', []);
myApp.controller('MyController', ['$scope', function($scope){
  // todo...
}]);

那么问题来了,后者加了个[],是个什么意思?这两种写法有什么不同呢?

在练习中发现同样的实现用这两种都可以。

阿神
阿神

闭关修行中......

répondre à tous(2)
大家讲道理

La deuxième façon d'écrire s'appelle inline-annotation, voir le document Dependency Injection

L'objectif principal de cette méthode d'écriture est d'éviter le problème du remplacement des noms de variables lors de la compression du code source (uglify), provoquant l'échec de l'injection de dépendances.

Si vous êtes intéressé par l'implémentation, vous pouvez voir l'injection de dépendances manuscrite

给我你的怀抱

est la dépendance à injecter. Cette façon d'écrire est propice à la future compression du code

.
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal