|| coffeescript switch 语句中的语句

|| statement in a coffeescript switch statement

如何使用 || (或)coffeescript 开关中的语句?需要它,因为它对不同类型的分配相同。

switch type
  when 'pdf'
    icon = 'file-pdf-o'
  when 'mpg' || 'mpg4' || 'flv' || 'mp4'
    icon = 'film'
  else
    icon = 'file'

这确实有效。它只检查第一个字符串 'mpg' 我怎样才能正确地做到这一点?

您可以使用逗号分隔的列表来使 switch 语句 'fall-through' 其选项。这与在香草 JavaScript.

中使用没有中断的空壳相同
switch type
  when 'pdf'
    icon = 'file-pdf-o'
   when 'mpg', 'mpg4', 'flv', 'mp4'
     icon = 'film'
   else
     icon = 'file'

编译为:

switch (type) {
  case 'pdf':
    icon = 'file-pdf-o';
    break;
  case 'mpg':
  case 'mpg4':
  case 'flv':
  case 'mp4':
    icon = 'film';
    break;
  default:
    icon = 'file';
}