我有以下Coffeescript代码
module.exports = QuickEditor =
quickEditorView : null
panel : null
subscriptions : null
searcher : null
activate: (state) ->
...
我试图清理一下。我知道coffeescript有一个多重赋值运算符,如
[cow, duck] = ["moo", "quack"]
但是尝试执行以下操作:
module.exports = QuickEditor =
[quickEditorView, panel, subscriptions, searcher] : []
activate: (state) ->
...
引发错误。有没有办法做到这一点?
答案 0 :(得分:0)
这取决于你的意思"清理"你正在尝试通过解构(-ed?)任务来完成什么。
如果您希望您的代码简洁明了,那么您可以比第一个块好得多。国际海事组织,对于四个零,最好只是明确。任何更多的抽象都会伤害到易读性,而不是它的帮助。
如果您想为高尔夫目的保存每个最后一个角色,您可以指定a=null
或其他内容。这可以节省12-7 = 5个字符。
如果您正在查看许多属性(数百个或更多)并且您想表达"将所有内容设置为null"的想法,您可以做某事像这样:
quickEditor[p] = null for p in 'quickEditorView panel subscriptions searcher bippity boppity boo veni vidi vici'.split(' ')
但我仍然可能更喜欢明确的做法。