どうやって?FunctionComponentでasync/await同期を使用してバックエンドapiデータを取得
直接例をあげる
注意:useEffectではasync関数を直接使用することはできません.async関数であればPromiseが返されるので、もう1つの関数をセットしてから値を割り当てる必要があります.
const BlogList: React.FunctionComponent<IProps> = (props: IProps) => {
let [fakedata, setFakeData] = React.useState<blogsData>([]);
React.useEffect(() => {
async function temp () {
let res = await getBlogsData();
let data: blogsData = (res as blogFromData).map(value => {
return {
title: value.title,
description: value.description ? value.description : "",
date: new Date(value.createDate).toLocaleDateString(),
views: value.views,
likes: value.likes,
labels: value.labels
}
})
setFakeData(data);
}
temp();
}, [])
...
注意:useEffectではasync関数を直接使用することはできません.async関数であればPromiseが返されるので、もう1つの関数をセットしてから値を割り当てる必要があります.