【问题标题】:ESLint complains about arrow function return objectESLint 抱怨箭头函数返回对象
【发布时间】:2018-12-11 20:33:47
【问题描述】:

为什么 ESLint 拒绝这个?

let myFunc = (state) => {a:"b"};

这是说它期望一个函数或赋值调用。

【问题讨论】:

标签: eslint


【解决方案1】:

在 ES6 箭头函数中

如果您使用花括号{},则应返回return 语句。

let myFunc = (state) => {
  return { a:"b"}
}

如果使用不使用大括号,则应使用圆括号 () 将返回对象括起来。

let myFunc = (state) => ({ a:"b"})

【讨论】:

    【解决方案2】:

    以这种方式返回对象字面量的箭头函数在语法上是不明确的,因为它也可能是带有标签 a 的 JavaScript 块。您需要用括号括住文字以使其清楚:

    let myFunc = (state) => ({a:"b"});
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-07-30
      • 1970-01-01
      • 1970-01-01
      • 2022-01-05
      相关资源
      最近更新 更多