在页面加载时使用 useEffect 钩子播放音频
Playing audio with useEffect hook on page load
我正在构建一个致敬页面,我希望每次在页面加载时播放我的音频。
到目前为止,它似乎只是偶尔播放,我不确定为什么。
var audio = new Audio("theme.mp3");
const Playit = () => {
audio.play();
}
useEffect(() => Playit(), [Playit]);
我确定我没有正确使用 useEffect
挂钩,因为我试图让它像 componentDidMount
一样工作
我如何在页面加载时播放音频?
提前谢谢你。
var audio = new Audio("theme.mp3");
const Playit = () => {
audio.play();
}
useEffect(() => Playit(), []);
在 Playit
函数中创建音频对象。还传递一个空数组作为 useEffect
挂钩中的第二个参数。
const Playit = () => {
var audio = new Audio("theme.mp3");
audio.play();
}
useEffect(() => {Playit()}, []);
抱歉我不能添加评论。
似乎 运行 Playit()
时,theme.mp3 还没有准备好 play.Does 每次刷新页面时都无法播放
原来你无法在 chrome 上自动播放音频。 Chrome 阻止它。但是,您可以像这样使用音频控件
const [audio, SetAudio] = useState("");
const Playit = () => {
audio.play();
};
const Stopit = () => {
audio.pause();
};
useEffect(() => {
SetAudio(new Audio("theme.mp3"));
}, []);
我正在构建一个致敬页面,我希望每次在页面加载时播放我的音频。 到目前为止,它似乎只是偶尔播放,我不确定为什么。
var audio = new Audio("theme.mp3");
const Playit = () => {
audio.play();
}
useEffect(() => Playit(), [Playit]);
我确定我没有正确使用 useEffect
挂钩,因为我试图让它像 componentDidMount
一样工作
我如何在页面加载时播放音频?
提前谢谢你。
var audio = new Audio("theme.mp3");
const Playit = () => {
audio.play();
}
useEffect(() => Playit(), []);
在 Playit
函数中创建音频对象。还传递一个空数组作为 useEffect
挂钩中的第二个参数。
const Playit = () => {
var audio = new Audio("theme.mp3");
audio.play();
}
useEffect(() => {Playit()}, []);
抱歉我不能添加评论。
似乎 运行 Playit()
时,theme.mp3 还没有准备好 play.Does 每次刷新页面时都无法播放
原来你无法在 chrome 上自动播放音频。 Chrome 阻止它。但是,您可以像这样使用音频控件
const [audio, SetAudio] = useState("");
const Playit = () => {
audio.play();
};
const Stopit = () => {
audio.pause();
};
useEffect(() => {
SetAudio(new Audio("theme.mp3"));
}, []);