跳至内容

@stylistic/

行注释位置

行注释可以放在代码上方或旁边。此规则帮助团队保持一致的样式。

js
// above comment
var foo = "bar";  // beside comment

规则详情

此规则强制执行一致的行注释位置。块注释不受此规则影响。默认情况下,此规则忽略以下单词开头的注释:eslintjshintjslintistanbulglobalexportedjscsfalls through

选项

此规则接受一个参数,可以是字符串或对象。字符串设置与position属性的设置相同(如下所述)。对象选项具有以下属性

position

position选项有两个设置

  • above(默认)强制行注释仅位于代码上方,在它自己的行上。
  • beside强制行注释仅位于代码行的末尾。

position: above

{ "position": "above" } 选项的正确代码示例

js
/*eslint @stylistic/line-comment-position: ["error", { "position": "above" }]*/
// valid comment
1 + 1;
正确

{ "position": "above" } 选项的错误代码示例

js
/*eslint @stylistic/line-comment-position: ["error", { "position": "above" }]*/
1 + 1; 
// invalid comment
错误

position: beside

{ "position": "beside" } 选项的正确代码示例

js
/*eslint @stylistic/line-comment-position: ["error", { "position": "beside" }]*/
1 + 1; // valid comment
正确

{ "position": "beside" } 选项的错误代码示例

js
/*eslint @stylistic/line-comment-position: ["error", { "position": "beside" }]*/
// invalid comment
1 + 1;
错误

ignorePattern

默认情况下,此规则会忽略以下单词开头的注释:eslintjshintjslintistanbulglobalexportedjscsfalls through。也可以提供一个替代的正则表达式。

ignorePattern 选项的正确代码示例

js
/*eslint @stylistic/line-comment-position: ["error", { "ignorePattern": "pragma" }]*/
1 + 1; // pragma valid comment
正确

ignorePattern 选项的错误代码示例

js
/*eslint @stylistic/line-comment-position: ["error", { "ignorePattern": "pragma" }]*/
1 + 1; 
// invalid comment
错误

applyDefaultIgnorePatterns

即使提供了 ignorePattern,也会应用默认的忽略模式。如果要省略默认模式,请将此选项设置为 false

{ "applyDefaultIgnorePatterns": false } 选项的正确代码示例

js
/*eslint @stylistic/line-comment-position: ["error", { "ignorePattern": "pragma", "applyDefaultIgnorePatterns": false }]*/
1 + 1; // pragma valid comment
正确

{ "applyDefaultIgnorePatterns": false } 选项的错误代码示例

js
/*eslint @stylistic/line-comment-position: ["error", { "ignorePattern": "pragma", "applyDefaultIgnorePatterns": false }]*/
1 + 1; 
// falls through
错误

已弃用: 对象属性 applyDefaultPatterns 已弃用。请改用属性 applyDefaultIgnorePatterns

何时不使用它

如果您不关心不同的行注释样式,则可以关闭此规则。

兼容性

JSCS: validateCommentPosition