IntelliJ:禁用“TS80006:这可能会转换为异步函数。”

kca*_*kca 7 webstorm eslint intellij-14

在 WebStorm 中,如何禁用警告(又名“快速修复”):

TS80006: This may be converted to an async function.
Run Code Online (Sandbox Code Playgroud)

我所说的“警告”是指函数名称带有下划线,并且我在悬停时看到警告文本:

警告的屏幕截图,包括。 选项

我希望此警告的设置位于Settings / Editor / Inspections某处,但当我搜索“异步函数”或“快速修复”或“检查”时,我找不到它。

(我假设这个设置在 WebStorm 和 IntelliJ 中是相同或相似的)

例如,对于以下函数会显示此警告:

const f = (): Promise<string[]> => {
  return util()
    .then( mapFunction1 )
    .then( mapFunction2 );
};
Run Code Online (Sandbox Code Playgroud)

WebStorm建议改为:

const f = async (): Promise<string[]> => {
  const s = await util();
  const s_1 = await mapFunction1( s );
  return mapFunction2( s_1 );
};
Run Code Online (Sandbox Code Playgroud)

但我仍然更喜欢这个.then()变体,因为它对我来说更具可读性。

编辑:

我在这个答案之后找到了“编辑器/意图”部分,但是在禁用“转换为异步函数”后,警告仍然出现:

我的“意图”设置的屏幕截图

有趣的是,此后,“更多操作”菜单中不再建议“转换为异步函数”,但“建议”仍然显示在代码中(包括悬停框):

禁用“转换为异步函数”后出现的警告屏幕截图

小智 2

  1. 打开 WebStorm 并转到Settings

  2. 在设置对话框中,导航至Editor

  3. 在设置对话框顶部的搜索栏中,输入This may be converted to an async function

  4. 该规则应该出现在Intentions选项卡中。

在此输入图像描述