AirBnB Linter 在同一行中进行多次柯里化,使其太长

Luk*_*gen 4 eslint eslint-config-airbnb

我似乎遇到了 AirBnB linting 悖论。

我有以下几行:

const pagePromiseGenerator = (graphql, createPage) => (gqlNodeName, pageComponent) => new Promise((resolve, reject) => {
Run Code Online (Sandbox Code Playgroud)

长度超过 100 个字符。所以我可以将其转换为:

const pagePromiseGenerator = (graphql, createPage) => {
  return (gqlNodeName, pageComponent) => new Promise((resolve, reject) => {
Run Code Online (Sandbox Code Playgroud)

但这违反了爱彼迎箭头主体样式规则。我应该禁用该行的 linting,还是有更好的方法?

wil*_*lma 6

您可以满足这两个规则。您将在隐式箭头换行文档中看到,您可以将隐式返回括在括号中:

const pagePromiseGenerator = (graphql, createPage) => (
  (gqlNodeName, pageComponent) => new Promise((resolve, reject) => {
    // some code here
  })
);
Run Code Online (Sandbox Code Playgroud)