typescript 类型脚本中的“无效承诺表达式”

tpgth1q7  于 2023-01-31  发布在  TypeScript
关注(0)|答案(1)|浏览(126)

查看TypeScript中的React Native应用,屏幕文件中有以下片段:

export const DetailPageScreen: FC<StackScreenProps<AuthorizedNavigatorParamList, 'Details'>> = observer(({ route, navigation }) => {
  useEffect(() => {
    void (async () => {
      await SomeFunction();
    })();
  }, []);

帮我解析一下useEffect中的内容,它是一个函数体,其内容如下:

() =>
{
    void (async () => {
      await SomeFunction();
    })();
}

所以void后面的圆括号里是一个没有await的异步函数调用--我想这是一个会导致承诺的表达式。那么void在这里到底是做什么的呢?如果我没弄错的话,它可以归结为void promiseObject

2w2cym1i

2w2cym1i1#

那虚空到底在这里做什么
在运行时什么都没有,void operator只是计算它前面的内容并返回undefined
在没有其他上下文的情况下,我最好的猜测是这是对一些linter的暗示,很可能是typescript-eslintno-floating-promises规则。

相关问题