1import React from 'react'; 2import MusicItem from '@/components/mediaItem/musicItem'; 3import Config from '@/core/config'; 4import {ISearchResult} from '@/pages/searchPage/store/atoms'; 5import TrackPlayer from '@/core/trackPlayer'; 6 7interface IMusicResultsProps { 8 item: IMusic.IMusicItem; 9 index: number; 10 pluginSearchResultRef: React.MutableRefObject<ISearchResult<'music'>>; 11} 12 13export default function MusicResultItem(props: IMusicResultsProps) { 14 const {item: musicItem, pluginSearchResultRef} = props; 15 16 return ( 17 <MusicItem 18 musicItem={musicItem} 19 onItemPress={() => { 20 const clickBehavior = Config.get( 21 'setting.basic.clickMusicInSearch', 22 ); 23 if (clickBehavior === '播放歌曲并替换播放列表') { 24 TrackPlayer.playWithReplacePlayList( 25 musicItem, 26 (pluginSearchResultRef?.current?.data ?? [ 27 musicItem, 28 ]) as IMusic.IMusicItem[], 29 ); 30 } else { 31 TrackPlayer.play(musicItem); 32 } 33 }} 34 /> 35 ); 36} 37