El siguiente archivo "funciona" (la sensación de que no arroja ningún error):
<!doctype html>
<html ng-app="modx">
<script src="http://code.angularjs.org/angular-1.0.0rc7.js"></script>
<script>
angular.module("modx", [], function($routeProvider) {
});
</script>
</html>
pero esto
<!doctype html>
<html ng-app="modx">
<script src="http://code.angularjs.org/angular-1.0.0rc7.js"></script>
<script>
angular.module("modx", [], function($routeProvider, $rootScope) {
});
</script>
</html>
da el error:
Error: proveedor desconocido: $ rootScope del archivo
fuente modx : http://code.angularjs.org/angular-1.0.0rc7.js
Línea: 2491
WTF?
Respuestas:
No puede solicitar, por ejemplo, durante la fase de configuración; solo puede solicitar proveedores.
Ver http://docs.angularjs.org/guide/module para más información.
fuente
config
? decir ruta raíz dentro de la aplicación asp.net? Simplemente no quiero usar variables globales y quería usarng-init='root:<%= myroot %>'
y usarroot
valor enmodule.config
.angular.module('config', []).constant('appRoot', '/local/js/app');
(este código sería generado por su servidor (incluso podría generarlo como un archivo JS, en lugar de incluirlo en el archivo html). Luego, su aplicación carga este módulo y, por lo tanto, tiene acceso aappRoot
.He encontrado que el siguiente "patrón" es muy útil:
donde, MainCtrl es un controlador. Me incomoda confiar en que los nombres de los parámetros de la función Controlador hacen una imitación uno por uno de las instancias por temor a que pueda cambiar los nombres y arruinar las cosas. Prefiero usar explícitamente $ inject para este propósito.
fuente
MainCtrl
así?angular.module('myMod', []).controller('theController', controllerFunction); controllerFunction.$inject = []; function controllerFunction() { }
No te sugiero que uses la sintaxis como lo hiciste. AngularJS le permite tener diferentes funcionalidades como desee (
run
,config
,service
,factory
, etc ..), que son más professional.In esta función ni siquiera tienen que inyectarse por sí mismo comopuedes usarlo, como sabes.
fuente