Spec-Zone.ru › Flow

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

Вы можете использовать комментарии flowlint, чтобы задавать более точные настройки линтера в пределах файла. Эти комментарии бывают трёх видов:

  • flowlint
  • flowlint-line
  • flowlint-next-line

Во всех видах пробелы и звёздочки между словами игнорируются, что позволяет свободно форматировать комментарии.

flowlint​

Базовый комментарий flowlint принимает список пар rule:severity, разделённых запятыми, и применяет эти настройки до конца исходного файла, пока они не будут переопределены. У этого есть три основных назначения: применение настроек к блоку, ко всему файлу и к части строки.

настройки для блока кода: Пару комментариев flowlint можно использовать, чтобы применить определённую настройку к блоку кода. Например, отключение линта untyped-type-import для блока импортов типов будет выглядеть так:

import type {
  // flowlint untyped-type-import:off
  Foo,
  Bar,
  Baz,
  // flowlint untyped-type-import:error
} from './untyped.js';

настройки для файла: Комментарий flowlint не обязательно должен иметь парный комментарий, образующий блок. Непарный комментарий просто применяет свои настройки до конца файла. Например, так можно отключить все линты sketchy-null-check в определённом файле:

// flowlint sketchy-null:off
...

настройки для части строки: Настройки, применяемые с помощью flowlint, начинают и прекращают действовать непосредственно в месте комментария. Это значит, что можно делать, например, следующее:

function foo(a: ?boolean, b: ?boolean) {
  if (/* flowlint sketchy-null-bool:off */a/* flowlint sketchy-null-bool:warn */ && b) {
    ...
  } else {
    ...
  }
}

если вам нужен ещё более точный контроль, чем тот, который обеспечивают комментарии для отдельных строк.

flowlint-line​

Комментарий flowlint-line работает аналогично комментарию flowlint, но применяет настройки только к текущей строке, а не до конца файла. Комментарии flowlint-line обычно используются, чтобы отключить линт для определённой строки:

function foo(x: ?boolean) {
  if (x) { // flowlint-line sketchy-null-bool:off
    ...
  } else {
    ...
  }
}

flowlint-next-line​

flowlint-next-line работает так же, как flowlint-line, но применяет настройки к следующей строке, а не к текущей:

function foo(x: ?boolean) {
  // flowlint-next-line sketchy-null-bool:off
  if (x) {
    ...
  } else {
    ...
  }
}

См. также​

  • Справочник по правилам линтера — все доступные правила линтера и их описания
  • .flowconfig [lints] — настройка уровней серьёзности линта для всего проекта

© 2013–present Facebook Inc.
Licensed under the MIT License.
https://flow.org/en/docs/linting/flowlint-comments

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API