2016-05-27 9 views
3

enter image description hereESLint Airbnb ES6 и Redux Асинхронный Действие Неожиданный блок тело оператора окружающая стрелка

Что я делаю неправильно? У меня, как и три других асинхронных действий, которые имеют один и тот же вопрос и не может это исправить :(

+0

Просто FYI его легче если вы добавите свой код в свой вопрос, а не снимок экрана – Mark

+0

Правило состоит в том, чтобы предотвратить ненужное вложение. Идея состоит в том, что 'x => y => x + y' является более четким, чем вложенная альтернатива. –

ответ

10

Когда вы посмотрите на Arrow Function Documentation

(param1, param2, …, paramN) => expression 
// equivalent to: => { return expression; } 

«Блокировать заявление Неожиданного окружающей стрелки тело» просто означает, что вам не нужен { return expression; } блока для вашей функции стрелка здесь, как функция стрелки действительно возвращается по умолчанию.

const getOptions =() => (dispatch, getState) => {} 

эквивалентно

const getOptions =() => { return (dispatch, getState) => {} } 

и поэтому блок операторов ненужно

2

Не рекомендуется:
Вы всегда можете отключить arrow-body-style правила или настроить его таким образом, что он не дает таких ошибок.

Рекомендуется:

const getOptions =() => (dispatch, getState) => { 
    const {user} = getState(); 
    //rest of the code 
} 


В основном это означает, что мы не должны писать { return вещь, когда мы возвращаемся только без делать что-нибудь еще

Смежные вопросы