const Home = withRouter((props: RouteComponentProps) => {
const [dataState, setDataState] = useState(data);
const [isLoading, setIsLoading] = useState(false);
useEffect(() => {
const fetchData = async () => {
setIsLoading(true);
const res = await fetch('https://jsonplaceholder.typicode.com/users/');
const parsed = await res.json();
setDataState(parsed);
setIsLoading(false);
};
fetchData();
}, []);
....
我有这段代码可以为我的组件获取一些初始数据。进行了调用,但是直到我实际与UI中的某些内容交互后,它才会重新呈现。我在这里做错了。
答案 0 :(得分:0)
找出问题所在。
我正在对子组件中的数据进行排序。那里的效果需要取决于从home组件传递的props.data。
useEffect(() => {
...some sorting logic
}, [sortState, props.data]);
return <Table minimalPadding={true} columns={columns} data={sortedData} />;