使用依赖注入将参数传递给命名函数

时间:2014-12-30 21:15:19

标签: javascript angularjs dependency-injection

我有一个有角度的应用程序,我将命名函数传递给控制器​​。问题是我想将一个提供者注入该控制器以供使用。控制台给了我TypeError: object is not a function

我的问题是,我的语法有什么问题?我想错了吗?

(function() {
  'use strict';

  angular.module('MyCoolApp.controllers')

  .controller('SignInCtrl', ['$scope', 'Avatar', SignInCtrl]);

  function SignInCtrl(Avatar) {
    var vm = this;

    // Error occurs here in reference to creating an instance of Avatar
    vm.avatar = new Avatar();
  }
})();

1 个答案:

答案 0 :(得分:1)

第一个参数是$scope而非Avatar

function SignInCtrl($scope, Avatar) {
    var vm = this;

    // Error occurs here in reference to creating an instance of Avatar
    vm.avatar = new Avatar();
}