【发布时间】:2015-05-27 23:07:34
【问题描述】:
我正在使用 Coffeescript 并试图定义一个控制器,它将 使用“HomeController as homeCtrl”语法。
angular.module('myApp.controllers',[]).controller("HomeController", ->
@someArray = []
# return
)
这已损坏 - scope.homeCtrl 设置为 [] 而不是对象 {someArray: []}。我意识到这是因为 Coffeescript 自动返回函数的最后一行,所以转译后的 return this.someArray = [] 返回函数的 []。我可以通过取消注释 return 命令,甚至像 return true 或 @baz='foobar' 这样的命令来解决这个问题。但真正奇怪的是,只有当函数的最后一行返回一个数组时,这才会搞砸。怎么回事?
【问题讨论】:
标签: javascript angularjs coffeescript