Как исправить ошибку Eslint "prefer-destructuring"?



Я хотел сократить объектный литерал в ES6 следующим образом:



const loc = this.props.local;


Причина в том, что loc.foo(); намного проще печатать, чем this.props.local.foo();



Но теперь Эслинт жалуется:




Использовать объект деструктурируется: предпочитаю-деконструкция




Я прочитал описание ошибки на eslint.org но я этого не понимаю. У них есть пример, который очень похож на мой код, но их, кажется, все в порядке?



var foo = object.bar;


Как я могу исправить ошибку, не задав ее игнорирование в файле .eslintrc?

689   3  

3 ответов:

Измените код с:

const local = this.props.local;

Кому:

const { local } = this.props;

Они эквивалентны, и вы можете вызвать local.foo() таким же образом. разве что второй использует деструкцию объекта.

Это новая конструкция в ES 6, которая позволяет вам сопоставлять свойства объекта в присваивании. Синтаксис, который вам нужен:

const { local: loc } = this.props

, что переводится как: "объявите константу loc и присвоите ей значение свойства local из этого.реквизит".

Он говорит вам использовать

const {props: {local: loc}} = this;

Comments

    Ничего не найдено.