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