react hooks+typescript封装AsyncComponent来实现懒加载

最近尝试着用react hooks+typescript写项目,typescript用得不是很熟练,在封装AsyncComponent来实现懒加载时遇到如下问题:

image.png

代码如下:
```

import React, { useState, useEffect, useMemo } from "react";

export default function AsyncComponent(loadComponent: () => Promise<any>, placeholder = "拼命加载中...") {

const [Component, setComponent] = useState(null);

useEffect(() => {
    (async () => {
        const { default: asyncComponent } = await loadComponent();

        setComponent(asyncComponent);

        return () => setComponent(null);
    })();
},[]);

return Component ? <Component /> : placeholder;

};

阅读 2.5k
2 个回答

你的asyncComponent不是一个react component

新手上路,请多包涵

asyncComponent没毛病呀,我参考的这个image.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题