1 回答
TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超3個(gè)贊
在我在這里對(duì)您的代碼進(jìn)行的測(cè)試中,我添加了showPlayOnHover屬性以將其聲明為 false,以處理懸停時(shí)出現(xiàn)的按鈕。
添加了渲染或不渲染按鈕的方法:
handlePlayOnHover = (song) => {
this.setState({
showPlayOnHover: !this.state.showPlayOnHover,
isPlaying: !this.state.isPlaying
})
this.handleSongClick(song)
}
歌曲渲染結(jié)構(gòu)更新為:
<tr
className="song" key={index}
onClick={() => this.handleSongClick(song)}
onMouseOver={() => this.handleOnHover(song)}
onMouseOut={() => this.handleOnHover(song)}
>
<td className="song-actions">
<button>
<span className="song-number">
{!this.state.showPlayOnHover ? index+1 : <span className="ion-play"></span>}
</span>
<span className="ion-play"></span>
<span className="ion-pause"></span>
</button>
</td>
<td className="song-title">{song.title}</td>
<td className="song-duration">{song.duration}</td>
</tr>
方法handleOnHover負(fù)責(zé)有條件地顯示懸停時(shí)的播放按鈕和懸停時(shí)的歌曲編號(hào)。
添加回答
舉報(bào)
