/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeBlockComment": true }]*/var night = "long";/* what a great and wonderful day */var day = "great"
/*eslint @stylistic/js/lines-around-comment: ["error", { "afterBlockComment": true }]*/var night = "long";
/* what a great and wonderful day */
var day = "great"
incorrect
使用 { "afterBlockComment": true } 选项时,此规则的正确代码示例
js
/*eslint @stylistic/js/lines-around-comment: ["error", { "afterBlockComment": true }]*/var night = "long";/* what a great and wonderful day */var day = "great"
/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeLineComment": true }]*/var night = "long";
// what a great and wonderful day
var day = "great"
incorrect
使用 { "beforeLineComment": true } 选项时,此规则的正确代码示例
js
/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeLineComment": true }]*/var night = "long";// what a great and wonderful dayvar day = "great"
/*eslint @stylistic/js/lines-around-comment: ["error", { "afterLineComment": true }]*/var night = "long";
// what a great and wonderful day
var day = "great"
incorrect
使用 { "afterLineComment": true } 选项时,此规则的正确代码示例
js
/*eslint @stylistic/js/lines-around-comment: ["error", { "afterLineComment": true }]*/var night = "long";// what a great and wonderful dayvar day = "great"
/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeLineComment": true, "allowBlockStart": true }]*/function foo(){// what a great and wonderful dayvar day = "great"return day;}if (bar) {// what a great and wonderful dayfoo();}class C {// what a great and wonderful daymethod() {// what a great and wonderful dayfoo();}static {// what a great and wonderful dayfoo();}}
/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeBlockComment": true, "allowBlockStart": true }]*/function foo(){/* what a great and wonderful day */var day = "great"return day;}if (bar) {/* what a great and wonderful day */foo();}class C {/* what a great and wonderful day */method() {/* what a great and wonderful day */foo();}static {/* what a great and wonderful day */foo();}}switch (foo) {/* what a great and wonderful day */case 1:bar();break;}
/*eslint @stylistic/js/lines-around-comment: ["error", { "afterLineComment": true, "allowBlockEnd": true }]*/function foo(){var day = "great"return day;// what a great and wonderful day}if (bar) {foo();// what a great and wonderful day}class C {method() {foo();// what a great and wonderful day}static {foo();// what a great and wonderful day}// what a great and wonderful day}
/*eslint @stylistic/js/lines-around-comment: ["error", { "afterBlockComment": true, "allowBlockEnd": true }]*/function foo(){var day = "great"return day;/* what a great and wonderful day */}if (bar) {foo();/* what a great and wonderful day */}class C {method() {foo();/* what a great and wonderful day */}static {foo();/* what a great and wonderful day */}/* what a great and wonderful day */}switch (foo) {case 1:bar();break;/* what a great and wonderful day */}
/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeLineComment": true, "allowClassStart": false }]*/class foo {// what a great and wonderful dayday() {}};
/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeLineComment": true, "allowClassStart": true }]*/class foo {// what a great and wonderful dayday() {}};
/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeBlockComment": true, "allowClassStart": false }]*/class foo {/* what a great and wonderful day */day() {}};
/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeBlockComment": true, "allowClassStart": true }]*/class foo {/* what a great and wonderful day */day() {}};
/*eslint @stylistic/js/lines-around-comment: ["error", { "afterLineComment": true, "allowClassEnd": true }]*/class foo {day() {}// what a great and wonderful day};
/*eslint @stylistic/js/lines-around-comment: ["error", { "afterBlockComment": true, "allowClassEnd": true }]*/class foo {day() {}/* what a great and wonderful day */};
/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeLineComment": true, "allowObjectStart": true }]*/var foo = {// what a great and wonderful dayday: "great"};const {// what a great and wonderful dayfoo: someDay} = {foo: "great"};const {// what a great and wonderful dayday} = {day: "great"};
/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeBlockComment": true, "allowObjectStart": true }]*/var foo = {/* what a great and wonderful day */day: "great"};const {/* what a great and wonderful day */foo: someDay} = {foo: "great"};const {/* what a great and wonderful day */day} = {day: "great"};
/*eslint @stylistic/js/lines-around-comment: ["error", { "afterLineComment": true, "allowObjectEnd": true }]*/var foo = {day: "great"// what a great and wonderful day};const {foo: someDay// what a great and wonderful day} = {foo: "great"};const {day// what a great and wonderful day} = {day: "great"};
/*eslint @stylistic/js/lines-around-comment: ["error", { "afterBlockComment": true, "allowObjectEnd": true }]*/var foo = {day: "great"/* what a great and wonderful day */};const {foo: someDay/* what a great and wonderful day */} = {foo: "great"};const {day/* what a great and wonderful day */} = {day: "great"};
/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeLineComment": true, "allowArrayStart": true }]*/var day = [// what a great and wonderful day"great","wonderful"];const [// what a great and wonderful daysomeDay] = ["great", "not great"];
/*eslint @stylistic/js/lines-around-comment: ["error", { "beforeBlockComment": true, "allowArrayStart": true }]*/var day = [/* what a great and wonderful day */"great","wonderful"];const [/* what a great and wonderful day */someDay] = ["great", "not great"];
/*eslint @stylistic/js/lines-around-comment: ["error", { "afterLineComment": true, "allowArrayEnd": true }]*/var day = ["great","wonderful"// what a great and wonderful day];const [someDay// what a great and wonderful day] = ["great", "not great"];
/*eslint @stylistic/js/lines-around-comment: ["error", { "afterBlockComment": true, "allowArrayEnd": true }]*/var day = ["great","wonderful"/* what a great and wonderful day */];const [someDay/* what a great and wonderful day */] = ["great", "not great"];
/*eslint @stylistic/js/lines-around-comment: ["error", { "ignorePattern": "pragma", applyDefaultIgnorePatterns: false }] */foo();/* a valid comment using pragma in it */
@stylistic/js/
lines-around-comment
许多风格指南要求在注释之前或之后留空行。这些规则的主要目标是使注释更易于阅读,并提高代码的可读性。
规则详情
此规则要求在注释之前和/或之后留空行。它可以分别为块注释 (
/*
) 和行注释 (//
) 启用。此规则不适用于与代码出现在同一行的注释,也不要求在文件开头或结尾留空行。选项
此规则有一个对象选项
"beforeBlockComment": true
(默认) 要求在块注释之前留空行"afterBlockComment": true
要求在块注释之后留空行"beforeLineComment": true
要求在行注释之前留空行"afterLineComment": true
要求在行注释之后留空行"allowBlockStart": true
允许注释出现在块语句、函数体、类、switch 语句和类静态块的开头"allowBlockEnd": true
允许注释出现在块语句、函数体、类、switch 语句和类静态块的结尾"allowObjectStart": true
允许注释出现在对象字面量的开头"allowObjectEnd": true
允许注释出现在对象字面量的结尾"allowArrayStart": true
允许注释出现在数组字面量的开头"allowArrayEnd": true
允许注释出现在数组字面量的结尾"allowClassStart": true
允许注释出现在类的开头"allowClassEnd": true
允许注释出现在类的结尾"applyDefaultIgnorePatterns"
启用或禁用规则忽略的默认注释模式"ignorePattern"
规则要忽略的自定义模式"afterHashbangComment": true
要求在井号注释后有一个空行beforeBlockComment
使用默认
{ "beforeBlockComment": true }
选项时,此规则的错误代码示例使用默认
{ "beforeBlockComment": true }
选项时,此规则的正确代码示例afterBlockComment
使用
{ "afterBlockComment": true }
选项时,此规则的错误代码示例使用
{ "afterBlockComment": true }
选项时,此规则的正确代码示例beforeLineComment
使用
{ "beforeLineComment": true }
选项时,此规则的错误代码示例使用
{ "beforeLineComment": true }
选项时,此规则的正确代码示例afterLineComment
使用
{ "afterLineComment": true }
选项时,此规则的错误代码示例使用
{ "afterLineComment": true }
选项时,此规则的正确代码示例allowBlockStart
使用
{ "beforeLineComment": true, "allowBlockStart": true }
选项时,此规则的正确代码示例使用
{ "beforeBlockComment": true, "allowBlockStart": true }
选项时,此规则的正确代码示例allowBlockEnd
使用
{ "afterLineComment": true, "allowBlockEnd": true }
选项时,此规则的正确代码示例使用
{ "afterBlockComment": true, "allowBlockEnd": true }
选项时,此规则的正确代码示例allowClassStart
使用
{ "beforeLineComment": true, "allowClassStart": false }
选项时,此规则的错误代码示例使用
{ "beforeLineComment": true, "allowClassStart": false }
选项时,此规则的正确代码示例使用
{ "beforeLineComment": true, "allowClassStart": true }
选项时,此规则的正确代码示例此规则的错误代码示例,使用
{ "beforeBlockComment": true, "allowClassStart": false }
选项此规则的正确代码示例,使用
{ "beforeBlockComment": true, "allowClassStart": false }
选项此规则的正确代码示例,使用
{ "beforeBlockComment": true, "allowClassStart": true }
选项allowClassEnd
此规则的正确代码示例,使用
{ "afterLineComment": true, "allowClassEnd": true }
选项此规则的正确代码示例,使用
{ "afterBlockComment": true, "allowClassEnd": true }
选项allowObjectStart
此规则的正确代码示例,使用
{ "beforeLineComment": true, "allowObjectStart": true }
选项此规则的正确代码示例,使用
{ "beforeBlockComment": true, "allowObjectStart": true }
选项allowObjectEnd
此规则的正确代码示例,使用
{ "afterLineComment": true, "allowObjectEnd": true }
选项此规则的正确代码示例,使用
{ "afterBlockComment": true, "allowObjectEnd": true }
选项allowArrayStart
此规则的正确代码示例,使用
{ "beforeLineComment": true, "allowArrayStart": true }
选项此规则的正确代码示例,使用
{ "beforeBlockComment": true, "allowArrayStart": true }
选项allowArrayEnd
此规则的正确代码示例,使用
{ "afterLineComment": true, "allowArrayEnd": true }
选项此规则的正确代码示例,使用
{ "afterBlockComment": true, "allowArrayEnd": true }
选项ignorePattern
默认情况下,此规则会忽略以以下单词开头的注释:
eslint
、jshint
、jslint
、istanbul
、global
、exported
、jscs
。要忽略除默认值之外的更多注释,请将ignorePattern
选项设置为将传递给RegExp
构造函数的字符串模式。ignorePattern
选项的正确代码示例ignorePattern
选项的错误代码示例applyDefaultIgnorePatterns
即使提供了
ignorePattern
,也会应用默认忽略模式。如果您想省略默认模式,请将此选项设置为false
。{ "applyDefaultIgnorePatterns": false }
选项的正确代码示例{ "applyDefaultIgnorePatterns": false }
选项的错误代码示例afterHashbangComment
使用
{ "afterHashbangComment": true }
选项时,此规则的错误代码示例使用
{ "afterHashbangComment": true }
选项时,此规则的正确代码示例何时不使用它
许多人喜欢简洁的代码风格,并不介意注释紧挨着代码。如果您属于此类,则此规则不适合您。