如何在函数内调用函数? (咖啡脚本)

How do I call a function within a function? (CoffeeScript)

我在另一个函数中创建了一个函数 getData(),当我尝试调用它时,我进入了控制台 "getData is not defined"。我尝试了 @getData() ,但它也不起作用。这甚至可以在函数内完成吗?

class SomeCollection

   parse: (data) =>

       handleData: (data) ->
          return data

       getData: ->
          Session.ajax
          url: "someurl"
          type: 'get'

       getData().done handleData

我也试过将这些函数放在 parse() 函数之外,但每当我尝试引用 getData() 或 @getData() 时,它总是给我一个未定义的错误。

这不是完全清楚你想要做什么,而是将那些:s更改为=s并在[之后缩进两行] =13=],至少它会有一定的意义:

class SomeCollection

   parse: (data) =>

       handleData = (data) ->
          return data

       getData = ->
          Session.ajax
             url: "someurl"
             type: 'get'

       getData().done handleData

您的 parse 方法的 data 参数未在任何地方使用,但希望您意识到这一点。

不要使用冒号,因为它用于定义 属性 值。使用等号:

getData = () =>
 alert('hello!');

getData()

JSFiddle 演示:http://jsfiddle.net/etuy0t2c/