Javascript 我需要做什么才能访问控制器中的全局数据?

Javascript 我需要做什么才能访问控制器中的全局数据?,javascript,angularjs,ionic-framework,Javascript,Angularjs,Ionic Framework,我有一个angular应用程序,定义如下,带有一些全局值: angular.module('ionicApp', ['ionic', 'ngCordova', 'services']) .value('GlobalValues', { host : "http://localhost/", accountApi: 'MyService/api/AccountApi/' // ... other stuff like this

我有一个angular应用程序,定义如下,带有一些全局值:

angular.module('ionicApp', ['ionic', 'ngCordova', 'services'])
    .value('GlobalValues',
    {
        host : "http://localhost/",
        accountApi: 'MyService/api/AccountApi/'

        // ... other stuff like this
    })
    .run(function ($ionicPlatform) {
        // etc..
    })
我可以在我的
用户服务
中访问
全局值
,其定义如下:

angular.module('services', [])
    .service('UserService', function($q, $http, $ionicLoading, GlobalValues) {
        alert(GlobalValues.host); // has a value
    });
但在我的
CreateAdController
中,
全局值
未定义:

(function() {
    'use strict';

    angular.module('ionicApp')
        .controller('CreateAdController', ['$cordovaCamera', 'Camera', '$scope', '$http', 'GlobalValues', CreateAdController]);

    function CreateAdController($cordovaCamera, $scope, $http, GlobalValues) {
        alert(GlobalValues.host); // is undefined!
    };
})();
要从我的
CreateAdController
访问
GlobalValues
中的数据,我需要做什么

(function() {
'use strict';

angular.module('ionicApp')
    .controller('CreateAdController', ['$cordovaCamera', 'Camera', '$scope', '$http', 'GlobalValues']);

function CreateAdController($cordovaCamera, Camera, $scope, $http, GlobalValues) {
    alert(GlobalValues.host); // is undefined!
};
})();

以上的工作我已经做了一些改动。另外,CreateAdController无需再次注入

您的注入操作出错了。注入语句中有一些值太多,方法签名中有一些值太少

(function() {
    'use strict';

    angular.module('ionicApp')
        .controller('CreateAdController', ['$cordovaCamera', 'Camera', '$scope', '$http', 'GlobalValues']);

    function CreateAdController($cordovaCamera, Camera,  $scope, $http, GlobalValues) {
        alert(GlobalValues.host); // is undefined!
    };
})();

确保遵守喷油器/功能签名顺序

注射问题。GlobalValues是第五个参数,但您只将4个参数注入控制器…插入的模块顺序和发送模块的函数不正确。根据上述代码,GlobalValues将包含$http对象。@PoyrazYilmaz是对的:)