如何修复Eslint错误" prefer-destructuring"?

时间:2017-11-20 15:07:18

标签: javascript ecmascript-6 eslint

我想在ES6中缩短对象文字,如下所示:

const loc = this.props.local;

原因是loc.foo();this.props.local.foo();

更容易输入

但现在ESLint抱怨道:

  

使用对象解构:prefer-destructuring

我已阅读error description on eslint.org但我不理解。他们有一个看起来与我的代码非常相似的例子,但他们似乎没问题?

var foo = object.bar;

如何修复错误而不将其设置为.eslintrc文件中的忽略?

3 个答案:

答案 0 :(得分:61)

更改您的代码:

const local = this.props.local;

到:

const { local } = this.props;

它们是等效的,你可以用同样的方式调用local.foo()。除了第二次使用对象解构。

答案 1 :(得分:3)

它是ES 6中的一个新构造,允许您在赋值中匹配对象的属性。您需要的语法是:

const { local: loc } = this.props

转换为:"声明一个常量loc并从this.props"中为它指定属性local的值。

答案 2 :(得分:1)

它告诉你使用

HandlerBase