Eslint
规则 | Rules

max-nested-callbacks

强制回调可以嵌套的最大深度(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(function() { // Do something } } } }

此规则的正确代码示例包含以下{ "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( }

进一步阅读

相关规则

  • complexity

该规则在ESLint 0.2.0中引入。

资源