跳至内容

@stylistic/

multiline-comment-style

许多风格指南要求对跨越多行的注释使用特定的风格。例如,一些风格指南更喜欢对多行注释使用单个块注释,而其他风格指南则更喜欢连续的行注释。

规则细节

此规则旨在强制执行多行注释的特定风格。

选项

此规则有一个字符串选项,可以具有以下值之一

  • "starred-block"(默认):禁止连续行注释,而使用块注释。此外,要求块注释在每行之前都有一个对齐的* 字符。
  • "bare-block":禁止连续行注释,而使用块注释,并且禁止块注释在每行之前都有一个"*" 字符。此选项忽略 JSDoc 注释。
  • "separate-lines":禁止块注释,而使用连续行注释。默认情况下,此选项忽略 JSDoc 注释。要将此规则也应用于 JSDoc 注释,请将checkJSDoc 选项设置为true

此规则始终忽略指令注释,例如/* eslint-disable */

使用默认"starred-block" 选项时,此规则的错误代码示例

js

/* eslint @stylistic/multiline-comment-style: ["error", "starred-block"] */

// this line
// calls foo() foo();
/*
this line
calls foo() */
foo();
/*
this comment
* is missing a newline after /* */ /* * this comment * is missing a newline at the end
*/
/*
* the star in this line should have a space before it
*/ /* * the star on the following line should have a space before it
*/
错误

使用默认"starred-block" 选项时,此规则的正确代码示例

js
/* eslint @stylistic/multiline-comment-style: ["error", "starred-block"] */

/*
 * this line
 * calls foo()
 */
foo();

// single-line comment
正确

使用 "bare-block" 选项时,此规则的错误代码示例

js
/* eslint @stylistic/multiline-comment-style: ["error", "bare-block"] */

// this line
// calls foo() foo();
/*
* this line * calls foo() */ foo();
错误

使用 "bare-block" 选项时,此规则的正确代码示例

js
/* eslint @stylistic/multiline-comment-style: ["error", "bare-block"] */

/* this line
   calls foo() */
foo();
正确

使用 "separate-lines" 选项时,此规则的错误代码示例

js

/* eslint @stylistic/multiline-comment-style: ["error", "separate-lines"] */

/*
This line
calls foo() */ foo();
/*
* This line * calls foo() */ foo();
错误

使用 "separate-lines" 选项时,此规则的正确代码示例

js
/* eslint @stylistic/multiline-comment-style: ["error", "separate-lines"] */

// This line
// calls foo()
foo();
正确

使用 "separate-lines" 选项并将 checkJSDoc 设置为 true 时,此规则的错误代码示例

js

/* eslint @stylistic/multiline-comment-style: ["error", "separate-lines", { "checkJSDoc": true }] */

/*
*
* I am a JSDoc comment * and I'm not allowed */ foo();
错误

使用 "separate-lines" 选项并将 checkJSDoc 设置为 true 时,此规则的正确代码示例

js
/* eslint @stylistic/multiline-comment-style: ["error", "separate-lines", { "checkJSDoc": true }] */

// I am a JSDoc comment
// and I'm not allowed
foo();
正确

何时不使用它

如果您不想为多行注释强制执行特定样式,可以禁用此规则。