umijs useEffect 在首次启动时不起作用
发布于 3 年前 作者 narzantaria 1313 次浏览 来自 问答

大家好! 我的中文说得不好。 我想问一个问题。 我正在使用umijs和服务器端渲染(SSR)。 useEffect函数不会在第一次运行时触发,而只会在下一次运行时触发。 请告诉我正确的做法。 如果您可以在这里提出这样的问题。

import React, { useState, useEffect } from 'react';
import axios from 'axios';
import { Button } from 'antd';

function GoodsList({ params }) {
  const [data, setData] = useState([]);
  useEffect(() => {
    axios.get(`${process.env.UMI_APP_API}api/items/${params.cat}/${params.sub}`)
      .then(res => {
        setData(res.data);
      })
      .catch(err => console.log(err));
  }, [params]);

  return (
    <Button type="primary" onClick={_ => console.log(data)}>12345</Button>
  )
}

export default GoodsList;

谢谢大家!

回到顶部