Sal*_*ene 5 indentation coffeescript
我有以下几行CoffeeScript
:
names = (mail.folder for mail in @data when mail.service_name is service.name).unique()
Run Code Online (Sandbox Code Playgroud)
这条线太长了,所以它不会通过linting by CoffeeLint
.
我试图打破它,但我总是得到缩进错误CoffeeLint
.
缩进这个的正确方法是什么?
这是最可读的版本而不会过度冗长:
names =
(for mail in @data when mail.service_name is service.name
mail.folder).unique()
Run Code Online (Sandbox Code Playgroud)
您不能在多行上拆分列表推导,但正常的for循环也可以返回一个值,因此使用其中一个可以解决问题.如果你愿意给予额外的一行,那么循环周围就没有必要使用笨拙的括号:
names =
for mail in @data when mail.service_name is service.name
mail.folder
names = names.unique()
Run Code Online (Sandbox Code Playgroud)
最后,for
线的缩进取决于你; 我发现我的第一个版本更具可读性,但这也是有效的:
names =
(for mail in @data when mail.service_name is service.name
mail.folder).unique()
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1525 次 |
最近记录: |