为什么缩进词典在CoffeeScript中不起作用?

时间:2013-01-13 17:15:23

标签: coffeescript

我无法理解为什么会这样做

$.ajax({ url: "http://ruzzle-map.herokuapp.com/bad", 
         data: { word: $(".words-list li > span.word").eq(current_word).text() },
         dataType: 'jsonp',
         jsonp: 'jsoncall' })

失败了

$.ajax({ url: "http://ruzzle-map.herokuapp.com/bad", data: { word: $(".words-list li > span.word").eq(current_word).text() }, dataType: 'jsonp', jsonp: 'jsoncall' })

汇编得很好。

1 个答案:

答案 0 :(得分:1)

编译器似乎搞乱了对象文字的缩进,如果你在编译的第一个左大括号之后添加一个新行:

$.ajax({
  url: "http://ruzzle-map.herokuapp.com/bad", 
  data: { word: $(".words-list li > span.word").eq(current_word).text() },
  dataType: 'jsonp',
  jsonp: 'jsoncall' 
})

鉴于这是CoffeeScript,您可以省略函数调用括号并信任对象文字的缩进和换行,而不是使用大括号和逗号:

$.ajax
  url: "http://ruzzle-map.herokuapp.com/bad"
  data: 
    word: $(".words-list li > span.word").eq(current_word).text()
  dataType: 'jsonp'
  jsonp: 'jsoncall'