array-bracket-newline
強制在陣列括號開頭之後和結尾之前換行
🔧 可修正
此規則報告的一些問題可以透過 --fix
命令列選項自動修正
此規則在 ESLint v8.53.0 中已棄用。請在 @stylistic/eslint-plugin-js
中使用對應的規則。
許多風格指南要求或不允許在陣列括號內換行。
規則詳情
此規則強制在陣列括號開頭之後和結尾之前換行。
選項
此規則有一個字串選項
"always"
要求在括號內換行"never"
禁止在括號內換行"consistent"
要求每個括號對的換行使用方式一致。如果一對括號中一個括號內有換行,而另一個括號沒有,則會報告錯誤。
或一個物件選項(如果滿足任何屬性,則要求換行。否則,禁止換行)
"multiline": true
(預設)如果元素內部或元素之間有換行符,則要求換行符。如果此值為 false,則會停用此條件。"minItems": null
(預設)如果元素數量至少為給定的整數,則要求換行符。如果此值為 0,則此條件的行為將與選項"always"
相同。如果此值為null
(預設值),則會停用此條件。
always
使用 "always"
選項時,此規則的不正確程式碼範例
在遊樂場開啟
/*eslint array-bracket-newline: ["error", "always"]*/
var a = ;
var b = 1;
var c = 1, 2;
var d = 1,
2;
var e = function foo() {
dosomething();
};
使用 "always"
選項時,此規則的正確程式碼範例
在遊樂場開啟
/*eslint array-bracket-newline: ["error", "always"]*/
var a = [
];
var b = [
1
];
var c = [
1, 2
];
var d = [
1,
2
];
var e = [
function foo() {
dosomething();
}
];
never
使用 "never"
選項時,此規則的不正確程式碼範例
在遊樂場開啟
/*eslint array-bracket-newline: ["error", "never"]*/
var a =
;
var b =
1
;
var c =
1, 2
;
var d =
1,
2
;
var e =
function foo() {
dosomething();
}
;
使用 "never"
選項時,此規則的正確程式碼範例
在遊樂場開啟
/*eslint array-bracket-newline: ["error", "never"]*/
var a = [];
var b = [1];
var c = [1, 2];
var d = [1,
2];
var e = [function foo() {
dosomething();
}];
consistent
使用 "consistent"
選項時,此規則的不正確程式碼範例
在遊樂場開啟
/*eslint array-bracket-newline: ["error", "consistent"]*/
var a = [1
;
var b = [
1;
var c = [function foo() {
dosomething();
}
var d = [
function foo() {
dosomething();
}
使用 "consistent"
選項時,此規則的正確程式碼範例
在遊樂場開啟
/*eslint array-bracket-newline: ["error", "consistent"]*/
var a = [];
var b = [
];
var c = [1];
var d = [
1
];
var e = [function foo() {
dosomething();
}];
var f = [
function foo() {
dosomething();
}
];
multiline
使用預設 { "multiline": true }
選項時,此規則的不正確程式碼範例
在遊樂場開啟
/*eslint array-bracket-newline: ["error", { "multiline": true }]*/
var a =
;
var b =
1
;
var c =
1, 2
;
var d = 1,
2;
var e = function foo() {
dosomething();
};
使用預設 { "multiline": true }
選項時,此規則的正確程式碼範例
在遊樂場開啟
/*eslint array-bracket-newline: ["error", { "multiline": true }]*/
var a = [];
var b = [1];
var c = [1, 2];
var d = [
1,
2
];
var e = [
function foo() {
dosomething();
}
];
minItems
使用 { "minItems": 2 }
選項時,此規則的不正確程式碼範例
在遊樂場開啟
/*eslint array-bracket-newline: ["error", { "minItems": 2 }]*/
var a =
;
var b =
1
;
var c = 1, 2;
var d = 1,
2;
var e =
function foo() {
dosomething();
}
;
使用 { "minItems": 2 }
選項時,此規則的正確程式碼範例
在遊樂場開啟
/*eslint array-bracket-newline: ["error", { "minItems": 2 }]*/
var a = [];
var b = [1];
var c = [
1, 2
];
var d = [
1,
2
];
var e = [function foo() {
dosomething();
}];
multiline 和 minItems
使用 { "multiline": true, "minItems": 2 }
選項時,此規則的不正確程式碼範例
在遊樂場開啟
/*eslint array-bracket-newline: ["error", { "multiline": true, "minItems": 2 }]*/
var a =
;
var b =
1
;
var c = 1, 2;
var d = 1,
2;
var e = function foo() {
dosomething();
};
使用 { "multiline": true, "minItems": 2 }
選項時,此規則的正確程式碼範例
在遊樂場開啟
/*eslint array-bracket-newline: ["error", { "multiline": true, "minItems": 2 }]*/
var a = [];
var b = [1];
var c = [
1, 2
];
var d = [
1,
2
];
var e = [
function foo() {
dosomething();
}
];
何時不使用它
如果您不想要強制在陣列括號開頭之後和結尾之前換行,請不要啟用此規則。
相容性
相關規則
版本
此規則在 ESLint v4.0.0-alpha.1 中引入。