箭头体

时间:2016-03-18 20:25:50

标签: reactjs ecmascript-6 eslint

我使用"eslint-config-airbnb": "^6.1.0",来保持我的JavaScript清洁。

我的linter对看似合法的代码感到不满:

enter image description here

看起来这可能是ongoing issue。有没有人对OCD开发者有什么建议如何在此期间解决这个问题?也许禁用此规则或其他?

3 个答案:

答案 0 :(得分:79)

单个表达式不需要块语句。

this.state.todos.filter(filterTodo => filterTodo !== todo);

答案 1 :(得分:2)

要添加Kevin答案,错误与您的eslint配置有关。这就是说,如果arrow-body-style选项设置为true,则OP是正确的。另一个例子是这样的:

    return this.state.greetings.map((name) => {
        return <HelloWorld key={name} name={name} />;
    });

没有arrow-body-style选项,凯文回答不需要阻止声明({ return ...})。

这实际上打开了一个关于哪种风格更合适的新问题。

有关详细参考:http://eslint.org/docs/rules/arrow-body-style

答案 2 :(得分:-1)

如果您确实不想将箭头函数包装在block语句中,则可以将其关闭。

module.exports = {
  extends: "airbnb-base",
  rules: {
    "arrow-body-style": 0
  },
  "env": {
    "jest": true
  }
};