我正在通过JSHint运行我的代码,而且我遇到了这个错误:
在
之前预期break
case
声明
在这段代码上:
switch(true)
{
// Renames skill1=abc to section_8_1_body=abc
case Major === 0 && Minor === 0 && Patch < 433:
upgraded = upgraded.replace(/(\s+)skill(\d)=/gm, '$1section_8_$2_body=');
/*falls through*/
// Example
case Major === 0 && Minor === 0 && Patch < 442:
console.log('test');
/*falls through*/
}
代码检查文件的版本信息,并将其升级以与最新版本的软件兼容。因此,case
s是有意的,因此可以通过多个版本升级文件。
但是,即使it is supposedly valid,我仍然会收到错误消息添加 /*falls through*
。
如何让我的case
成功通过JSHint?
答案 0 :(得分:16)
JSHint似乎希望评论在case
之前就行了。
// Example
/* falls through */
case Major === 0 && Minor === 0 && Patch < 442:
console.log('test');
根据说明in the source code,它不会承认评论:
// You can tell JSHint that you don't use break intentionally by
// adding a comment /* falls through */ on a line just before
// the next `case`.