Codepen 中的 Coffeescript 'unspected token'

Coffeescript 'unspected token' in codepen

我正在尝试在代码笔中使用 coffeescript

这是我想尝试的代码:

$(document).ready ->
  render()

所以我在 js 窗格中启用了 coffeescript 并添加了 jQuery 作为外部 javascript:

但是我收到了这个错误

我非常有信心该代码是有效的 coffeescript 代码。那么为什么 codepen 标记 'unexpected token'?

如果我们查看您的所有代码:

$(document).ready ->
  render()

getWordList = ->
  [['hello', 12], ['dear', 10], ['a', 9], ['Joe', 5], ['8', 2]]

render = ->
  $canva = $('.wordcloud-canvas')
  options =
    list           : getWordList()
    fontFamily     : 'Times, serif'
    weightFactor   : 2
    color          : '#f02222'
    rotateRatio    : 0
    rotationSteps  : 0
    shuffle        : false
    backgroundColor: 'white'
    drawOutOfBound : no
    gridSize       : 320

    window.WordCloud $canvas[0], options

我们看到问题确实在于第 21 行 (window.WordCloud $canvas[0], options) 缩进了一步。缩进表示 window.WordCloud 调用应该是 options 对象的一部分,但这不是有效的 CoffeeScript。如果我们将其粘贴到 http://coffeescript.org/ 的 "Try CoffeeScript" 部分,它甚至会显示:

[stdin]:19:25: error: unexpected newline
    gridSize       : 320
                        ^

如果您修复了该问题 (https://codepen.io/anon/pen/GOgLbo),那么有关 > 的虚假错误消息就会消失,您会留下一个关于 $canvas 拼写错误的简单(正确)投诉在 $canva = $('.wordcloud-canvas') 作业中。

您的代码以两种方式被破坏,CodePen 本身以不同的方式被破坏。