parent
123f7465e3
commit
6b1e8aff1c
@ -0,0 +1,16 @@
|
||||
import VolPlayButton from '../VolPlayButton';
|
||||
|
||||
import { JournalCard } from '@/components';
|
||||
|
||||
export default function CoverCard({ journalInfo }: { journalInfo: JournalInfo }) {
|
||||
const { image, journalNo } = journalInfo;
|
||||
|
||||
return (
|
||||
<div className="relative">
|
||||
<JournalCard image={image} journalNo={journalNo}>
|
||||
{/* 播放/暂停 */}
|
||||
</JournalCard>
|
||||
<VolPlayButton className="absolute right-[30px] bottom-[-26px] z-2" no={journalNo} />
|
||||
</div>
|
||||
);
|
||||
}
|
@ -0,0 +1,28 @@
|
||||
import { JournalCard, PlayerButton } from '@/components';
|
||||
|
||||
export default function CoverCard({
|
||||
img,
|
||||
no,
|
||||
playStatus,
|
||||
onPlay,
|
||||
}: {
|
||||
img: string;
|
||||
no: string;
|
||||
playStatus: boolean;
|
||||
onPlay: () => void;
|
||||
}) {
|
||||
return (
|
||||
<JournalCard image={img} journalNo={no}>
|
||||
<JournalCard image={img} journalNo={no}>
|
||||
{/* 播放/暂停 */}
|
||||
<PlayerButton
|
||||
size={54}
|
||||
img={playStatus ? '/img/audio-player/pause.svg' : '/img/audio-player/play.svg'}
|
||||
text={playStatus ? '暂停' : '播放'}
|
||||
onClick={onPlay}
|
||||
className="mx-[31.5px]"
|
||||
/>
|
||||
</JournalCard>
|
||||
</JournalCard>
|
||||
);
|
||||
}
|
@ -0,0 +1,31 @@
|
||||
'use client';
|
||||
|
||||
import { useShallow } from 'zustand/react/shallow';
|
||||
|
||||
import { PlayerButton } from '@/components';
|
||||
import useAudioStore from '@/store/audio';
|
||||
|
||||
export default function VolPlayButton({ no, className }: { no: string; className: string }) {
|
||||
const { playState, setPlayState } = useAudioStore(
|
||||
useShallow((state) => {
|
||||
return {
|
||||
playState: state.playState,
|
||||
setPlayState: state.setPlayState,
|
||||
};
|
||||
}),
|
||||
);
|
||||
|
||||
const handlePlay = () => {
|
||||
setPlayState(!playState);
|
||||
};
|
||||
|
||||
return (
|
||||
<PlayerButton
|
||||
size={60}
|
||||
img={playState ? '/img/audio-player/pause.svg' : '/img/audio-player/play.svg'}
|
||||
text={playState ? '暂停' : '播放'}
|
||||
onClick={handlePlay}
|
||||
className={className}
|
||||
/>
|
||||
);
|
||||
}
|
Loading…
Reference in new issue