Angular coffeescript语法错误

时间:2014-03-26 21:36:15

标签: javascript angularjs coffeescript

尝试在我的角度应用中将工作JS转换为咖啡脚本,但是它会引发Error: [ng:areq] Argument 'ContactController' is not a function, got undefined

这是我的代码。

angular.module("app", [
  "ngResource"
  "ngRoute"
]).run ($rootScope) ->

$rootScope.log = (thing) ->
console.log thing

以下js工作正常

angular.module("app", ["ngResource", "ngRoute"]).run(function($rootScope) {
  $rootScope.log = function(thing) {
    console.log(thing);
  };
});

2 个答案:

答案 0 :(得分:1)

你的缩进已经关闭。 Coffeescript是空白的。

angular.module("app", [
  "ngResource"
  "ngRoute"
]).run ($rootScope) ->    
  $rootScope.log = (thing) ->
    console.log thing

成为:

angular.module("app", [ "ngResource", "ngRoute" ]).run ($rootScope) ->
  $rootScope.log = (thing) ->
    console.log thing

这并不能解释为什么ContactController无法加载,但如果您的模块没有正确定义可以解释它。

答案 1 :(得分:0)

angular.module("app", [
  "ngResource"
  "ngRoute"
]).run ($rootScope) ->

你在这里错过了一个逗号..

angular.module("app", [
  "ngResource",
  "ngRoute"
]).run ($rootScope) ->