控制器中的CoffeeScript + Angular隐式返回

时间:2015-09-15 20:36:40

标签: javascript angularjs coffeescript

我有一个使用ngRoute的角应用程序,当我声明控制器通常它没有正常工作因为隐含返回coffeescript所以我使用这个solution但这次我得到这个错误:

Error: [ng:areq] Argument 'BarsController' is not a function, got undefined

myApp的简化版:

angule.module('app',['ngRoute'])
.config(($routeProvider)->
  $routeProvider.when('/bar',
    templateUrl:'bar/bars.html'
    controller:'BarsController'
    controllerAs:'bc'
  )
)
angular.module('app').controller('BarsController',['$scope','$resource',BarsCtrl])
class BarsCtrl
  constructor:($scope,$resource)->
    console.log "in controller"

1 个答案:

答案 0 :(得分:2)

在您提供的同一链接中,它建议将控制器定义放在最后:

angule.module('app',['ngRoute'])
.config(($routeProvider)->
  $routeProvider.when('/bar',
    templateUrl:'bar/bars.html'
    controller:'BarsController'
    controllerAs:'bc'
  )
)

class BarsCtrl
  constructor:($scope,$resource)->
    console.log "in controller"

angular.module('app').controller('BarsController',['$scope','$resource',BarsCtrl])