Javascript 我能';不要改变一个声音的音量
我有一些按钮,每个按钮播放不同的声音。我创建了一个滑块来更改每个声音的音量。但是当我改变一个声音的音量时,其他声音的音量也会改变 我以这种方式创建每个声音:Javascript 我能';不要改变一个声音的音量,javascript,reactjs,howler.js,Javascript,Reactjs,Howler.js,我有一些按钮,每个按钮播放不同的声音。我创建了一个滑块来更改每个声音的音量。但是当我改变一个声音的音量时,其他声音的音量也会改变 我以这种方式创建每个声音: const sound = new Howl({ src: `sounds/${filename}`, html5: true, loop: true, volume: 0.5 })
const sound = new Howl({
src: `sounds/${filename}`,
html5: true,
loop: true,
volume: 0.5
})
并将其添加到对象中:
setActiveSounds([...activeSounds, {
fileName,
sound,
id: null,
volume: 0.5 }])
然后我有一个滑块,可以改变每个声音的音量:
{activeSounds.map(sound => {
return (
<input type="range" min="1" max="100" onChange={(e) => {
handelVolumeChange(e.target.value, sound)
}} />
)
}}
我试图在“activeSounds”播放声音时添加一个id,并用该id更改音量,但无效请包含代码沙盒。
const handelVolumeChange = (value, sound) => {
const newVolume = value/100
Howler.volume(newVolume.sound)
sound.volume = newVolume
}