max-nested-callbacks
強制執行回呼函式可巢狀化的最大深度
許多 JavaScript 函式庫使用回呼模式來管理非同步操作。任何複雜程度的程式很可能需要管理多個並行層級的非同步操作。一個常見且容易犯的錯誤是巢狀回呼,這會使程式碼隨著回呼巢狀越深而變得更難以閱讀。
foo(function () {
bar(function () {
baz(function() {
qux(function () {
});
});
});
});
規則詳細資訊
此規則強制執行回呼函式可巢狀化的最大深度,以提高程式碼的清晰度。
選項
此規則有一個數字或物件選項
"max"
(預設10
)強制執行回呼函式可巢狀化的最大深度
已棄用: 物件屬性 maximum
已棄用;請改用物件屬性 max
。
max
此規則使用 { "max": 3 }
選項的不正確程式碼範例
在遊樂場開啟
/*eslint max-nested-callbacks: ["error", 3]*/
foo1(function() {
foo2(function() {
foo3(function() {
foo4();
});
});
});
此規則使用 { "max": 3 }
選項的正確程式碼範例
在遊樂場開啟
/*eslint max-nested-callbacks: ["error", 3]*/
foo1(handleFoo1);
function handleFoo1() {
foo2(handleFoo2);
}
function handleFoo2() {
foo3(handleFoo3);
}
function handleFoo3() {
foo4(handleFoo4);
}
function handleFoo4() {
foo5();
}
相關規則
版本
此規則在 ESLint v0.2.0 中引入。