![](/img/trans.png)
[英]How to control useState and fill with data on load ? useEffect no work
[英]UseState to control
我使用一個按鈕來控制音頻播放器靜音,但它使播放器默認靜音,我只想在單擊時靜音。如何編輯它
import React, { useState } from "react";
import ReactAudioPlayer from "react-audio-player";
const Test = () => {
const [ismute, setOpen] = useState(false);
return (
<><div>
<ReactAudioPlayer
controls
muted={ismute ? "false": "True"}
src='https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3'
loop
autoPlay
/>
</div><button onClick={() => setOpen(!ismute)}>click me!</button>
</>
);
};
export default Test
如果您作為string
傳遞,
muted={ismute ? "false": "True"}
因為ismute
的初始值是false
的:
const [ismute, setMute] = useState(false);
那么你將作為道具傳遞的內容是True
或false
是truthy
值,這使ismute
始終靜音
對於狀態 ismute,最初分配值 true 而不是 false,如下所示:
const [ismute, setOpen] = useState(true);
您應該將muted
prop 作為true
或false
傳遞。 你作為一個字符串傳遞
muted={ismute ? false: true }
對於狀態 ismute,最初分配值 true 而不是 false,如下所示:
const [ismute, setOpen] = useState(true);
另一個更正可能是組件ReactAudioPlayer :
<ReactAudioPlayer
controls
muted={ismute}
src='https://www.soundhelix.com/examples/mp3/SoundHelix-Song-1.mp3'
loop
autoPlay
/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.