UseEffect 意外的保留字 'await'

UseEffect Unexpected Reserved Word 'await'

我正在尝试将我的 class 组件转换为函数组件。我相信我们需要使用 useEffect:

而不是 ComponentDidMount
useEffect(() => {
  const {
    data: ServerResponse
  } = await axios.get('http://127.0.0.1:8000/api/tweets/')
  console.log(ServerResponse)

  setPosts(ServerResponse)

}, [])

但我收到以下错误:

Unexpected reserved word 'await'
  1. 如果您想在函数中使用“await”关键字,您首先需要用“async”关键字修饰该函数。
  2. 但是 useEffect 挂钩并不期望从我们传递给它的回调中返回承诺。

解法:

useEffect(() => {
  const getData = async () => {
    const { data: ServerResponse } = await axios.get(
      "http://127.0.0.1:8000/api/tweets/"
    );
    console.log(ServerResponse);

    setPosts(ServerResponse);
  };
  getData();
}, []);