在使用超级脚本时,coffeescript中出现了其他意外情况

时间:2019-03-15 05:57:04

标签: backbone.js coffeescript

我正在使用bone.js,以coffeescript编写它,但是出现此错误,无法解决它!

代码段:

module.exports = class CoreModel extends Backbone.Model

   destroyed: false

   # Helper to toggle the state of boolean value (using not)
   toggle: (key) -> @swap key, invert

   # Helper to change the value of an entry using a function.
   swap: (key, f) -> @set key, f @get key

   toJSON: -> if @destroyed then 'DESTROYED' else super

错误:

[stdin]:11:45: error: unexpected else
toJSON: -> if @destroyed then 'DESTROYED' else super
                                          ^^^^

不知道为什么这是意外的!

1 个答案:

答案 0 :(得分:1)

如果您正在使用coffeescript 2,则需要对super()使用括号。这里的错误消息确实应该更有帮助。

您可以在similar question中了解它。

module.exports = class CoreModel extends Backbone.Model

  destroyed: false

  # Helper to toggle the state of boolean value (using not)
  toggle: (key) -> @swap key, invert

  # Helper to change the value of an entry using a function.
  swap: (key, f) -> @set key, f @get key

  toJSON: -> if @destroyed then 'DESTROYED' else super()

如果您发现自己想要旧行为的情况(所有参数都转发到super调用中,则可以使用以下方法:

foo: -> super arguments...