【发布时间】:2020-02-19 22:30:19
【问题描述】:
我正在使用 useState() 在组件挂载之前加载一些数据。
const [leaderboardData, setLeaderboardData] = useState([]);
const [featuredSelectedItem, setSelectedItem] = useState({});
useEffect(() => {
let dummyData = [
..someData
]
//Order based on standings
dummyData.sort((a, b) => {
return a.current_season_standing - b.current_season_standing;
});
dummyData[0].active = true;
setSelectedItem(dummyData[0]);
setLeaderboardData(dummyData);
}, []);
我的组件包含在一个转换组中。
<div className="d-flex h-100 home_container">
<TransitionGroup className="p-5 flex-1 home_selected_user">
<SwitchTransition>
<CSSTransition
key={featuredSelectedItem.id}
timeout={500}
classNames="featuredItem"
>
<div>
<img src="https://via.placeholder.com/150" alt={featuredSelectedItem.name} />
<h1>{featuredSelectedItem.name}</h1>
<p>Rank: {featuredSelectedItem.current_season_standing}</p>
<p>Country: {featuredSelectedItem.country}</p>
<p>Handicap: {featuredSelectedItem.handicap}</p>
<p>Wins: {featuredSelectedItem.wins}</p>
<p>View Player Profile</p>
</div>
</CSSTransition>
</SwitchTransition>
</TransitionGroup>
<div className="home_leaderboard p-4 flex-1">
<Leaderboard activeHandler={activeLeaderboardHandler} data={leaderboardData}></Leaderboard>
</div>
</div>
在页面加载时,组件加载时没有数据,然后在数据加载到组件后动画。我的目标是在页面加载之前将数据加载到组件上,以便不会触发转换?
【问题讨论】:
标签: reactjs react-hooks react-transition-group