CoffeeScript回调参数变为Object

时间:2014-03-08 05:30:08

标签: javascript coffeescript

我的回调函数在处理成JavaScript时被包装为对象。浏览器因此而抛出此错误:

未捕获的TypeError:对象不是函数

CoffeeScript:

startCamera: ->
    @media = $('#camera').getUserMedia {},
    success: (obj) ->
        console.log obj
        return
return

输出:

startCamera: function() {
    this.media = $('#camera').getUserMedia({}, {
        success: function(obj) {
            console.log(obj);
        }
    });
}

如何为参数构建常规匿名函数?

1 个答案:

答案 0 :(得分:1)

如果我已正确理解您的问题,您希望将匿名函数作为第二个参数传递。

要做到这一点,你需要删除文本success:,以便你的咖啡因看起来如下:

startCamera: ->
    @media = $('#camera').getUserMedia {},
    (obj) ->
        console.log obj
        return
    return