Что означает «имеет дополнительные свойства» в сообщении об ошибке файла .eslintrc?

#eslint

#eslint

Вопрос:

Я создаю файл .eslintrc, который включает правило «отступа». Конфигурация для правила выглядит следующим образом:

   "indent": ["error", 2, {
    ...,
    "FunctionDeclaration": {"parameters": 2, "body": 1},
    "FunctionExpression": {"parameters": 2, "body": 1},
  }]
  

Однако при запуске eslint я получаю сообщение об ошибке:

 Configuration for rule "indent" is invalid:
Value "data["1"].FunctionDeclaration" has additional properties.
Value "data["1"].FunctionExpression" has additional properties.
  

Что означает это сообщение об ошибке? Я бы предположил, что это означает, что либо (а) есть дополнительные свойства, обязательные для объявления функции, которых там нет, либо (б) одно из свойств («параметры» или «тело»), которые есть в объявлении функции, не должно там быть. Я думаю, что я могу исключить (b), потому что, когда я изменяю файл .eslintrc на:

   "indent": ["error", 2, {
    ...,
    "FunctionDeclaration": {},
    "FunctionExpression": {},
  }]
  

Я получаю то же сообщение об ошибке, хотя свойств нет. И во всей документации, которую я смог найти, говорится, что единственными необходимыми свойствами являются «параметры» и «тело», я не смог найти ничего, что указывало бы на то, что необходимы другие свойства, кроме этого. В чем здесь проблема?

Комментарии:

1. Вы не указали ни parameters «ни body » для FunctionDeclaration «или FunctionExpression » , поэтому их включение в ваш .eslintrc список несколько бессмысленно. Я представляю, в чем суть ошибки.

2. Как я уже упоминал, я все еще получаю ошибку, даже когда я включаю свойства «параметры» и «тело».

3. Действительно. Я неправильно понял вопрос. Какую версию eslint вы используете? Я не вижу ошибки ни в одной из ваших конфигураций правил.

4. Случайно, у вас eslint --version меньше версии v3.5.0?

5. Я на 3.5.0, и у меня такая же проблема с правильным определением: "indent" : [2, 2, { "SwitchCase": 1, "FunctionDeclaration": {"body": 1, "parameters": 2}}],