AngularJS参考错误

时间:2015-10-22 18:37:45

标签: angularjs

当我尝试运行我的应用时,我收到一些错误消息。我不确定他们的意思。我收到错误Uncaught ReferenceError:未定义accountInfoController且未定义未引用的ReferenceError:accountInfoService未定义。

这是我的控制者:

(function () {

'use strict';

angular
  .module('crm.ma')
  .controller('accountInfoController', accountInfoController);

accountInfoController.$inject = ['accountInfoService', 'toastr', '$scope'];

function getAccountInfo() {
    accountInfoService.getAccountInfo().then(function (response) {
        if (response.error) {
            toastr.error(response.error);
        }
        else {
            vm.details = response;
        }
    })       
}  
}());

这是我的服务

(function () {

angular
.module('crm.ma')
.service('accountInfoService', accountInfoService);

accountInfoService.$inject = ['$http', 'apiUrl'];


function getAccountInfo() {
    return $http.get(apiUrl + 'GetAccountDetails')
    .then(function (response) {
        return response.data;
    }, function (response) {
        return { error: response.data.message }
    });
}
}());

它与我的路由器有关吗?

    .state('index.DetailsTest', {
             url: '/details',
             templateUrl: 'app/components/main/account/account-details/DetailsTest.html',
             controller: 'accountInfoController',
             data: {
                 pageTitle: 'Test'
             }

         })

1 个答案:

答案 0 :(得分:1)

您实际上没有为控制器accountInfoControlleraccountInfoService定义功能。您刚刚定义了应该在控制器和服务中的方法

您的控制器代码应如下所示:

(function () {

'use strict';

angular
  .module('crm.ma')
  .controller('accountInfoController', accountInfoController);

accountInfoController.$inject = ['accountInfoService', 'toastr', '$scope'];
function accountInfoController(accountInfoService, toastr, $scope) {

  var vm = this;
  vm.getAccountInfo = getAccountInfo
  function getAccountInfo() {
    accountInfoService.getAccountInfo().then(function (response) {
        if (response.error) {
            toastr.error(response.error);
        }
        else {
            vm.details = response;
        }
    })       
  }  

}
}());

以及类似的服务