使用 super 时 coffeescript 中出现意外的其他情况
unexpected else in coffeescript when using super
我正在使用 backbone.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
^^^^
不知道为什么这是一个意想不到的 else!
如果您使用的是 coffeescript 2,则需要在 super()
中使用括号。这里的错误信息应该真的更有帮助。
您可以在 the docs 中阅读它。
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...
我正在使用 backbone.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
^^^^
不知道为什么这是一个意想不到的 else!
如果您使用的是 coffeescript 2,则需要在 super()
中使用括号。这里的错误信息应该真的更有帮助。
您可以在 the docs 中阅读它。
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...