我似乎无法将定义的值注入控制器。我已经浏览了角度文档和许多其他博客 - 但显然我在这里弄乱了一些关键的东西。
myapp = angular.module('MYAPP', ['ngRoute'])
.run(function () {
console.info("Hello MYAPP");
});
myapp.value("vx1", "placeholder for vx1");
并在控制器中
myapp.controller("MainCtlr", ["vx1", "ovEnv", function($scope, $timeout, vx1, ovEnv){
console.info("ctor MainCtlr env=", ovEnv, "; vx1=", vx1);
...
但我总是undefined
获得vx1
。
答案 0 :(得分:2)
["vx1", "ovEnv", function($scope, $timeout, vx1, ovEnv){
这两个序列必须相同。如果您删除["..]
数组部分并离开function(...) {
?
像这样:
myapp.controller("MainCtlr", function($scope, $timeout, vx1, ovEnv) { ... })
或
["$scope", "$timeout", "vx1", "ovEnv", function($scope, $timeout, vx1, ovEnv)
(见评论)
更多信息here。
内联数组注释
这是注释的首选方式 应用组件。这是文档中的示例 写的。
例如:
someModule.controller('MyController', ['$scope', 'greeter', function($scope, greeter) { // ... }]);