Есть ли правило ESlint для добавления асинхронности при использовании await в функции? - PullRequest
0 голосов
/ 28 декабря 2018

Я иногда начинаю писать функцию в JavaScript, не зная, нужна ли мне эта асинхронность или нет.Затем мне нужно использовать ключевое слово await: я бы хотел, чтобы ESlint автоматически исправлял и добавлял ключевое слово async в свою функцию при этом.

Например:

function foo() {
  const bar = await baz()
}

будетпреобразовано в:

async function foo() {
  const bar = await baz()
}

Существует ли правило ESlint с автоматическим исправлением для этого?

Может быть, кто-то поспорит, что нет смысла автоматически исправлять неправильный код в правильный код.В таком случае, будет ли у этого человека другое предложение по упрощению написания кода такого типа?

РЕДАКТИРОВАТЬ: код не является синтаксически правильным.Поэтому ESlint просто вызовет «ошибку синтаксического анализа».Поэтому это больше вопрос для текстового редактора: будет ли расширение VS Code, которое добавляет опцию быстрого исправления для такого рода синтаксической ошибки?«Пометить окружающую функцию как асинхронную», что-то в этом роде?

EDIT 2: это было бы особенно полезно при создании тестов.

it("is correct", () => {
  expect(isCorrect()).toBe(true)
})

и

it("is correct", async () => {
  expect(await isCorrect()).toBe(true)
})

оба допустимых синтаксиса.При изменении кода теста для добавления ключевого слова await было бы очень полезно, чтобы функция автоматически помечала себя как асинхронную, а не текущее поведение.

...