React Music Player – audioRef.play() не срабатывает при смене трекаJavascript

Форум по Javascript
Anonymous
React Music Player – audioRef.play() не срабатывает при смене трека

Сообщение Anonymous »

Я создаю простой музыкальный проигрыватель в React, который использует HTMLAudioElement через audioRef. Я ожидаю, что трек будет автоматически воспроизводиться каждый раз, когда я меняю currentTrack, но воспроизведение не начинается (хотя пользовательский интерфейс обновляется правильно).
Что я пробовал:
  • Проверенный audioRef.current не имеет значения null и src установлен.
  • Вызов вручную audioRef.current.play() в обработчике кликов работает.
  • Но внутри useEffect, вызванного currentTrack, происходит сбой молча (нет ошибок в консоли).
Соответствующий фрагмент кода:

Код: Выделить всё

useEffect(() => {
audioRef.current.play();
setIsPlaying(true);
}, [currentTrack]);
Ожидаемое поведение: новый трек начинает воспроизводиться сразу после обновления currentTrack.

Фактическое поведение: пользовательский интерфейс обновляется для отображения нового трека, но звук не воспроизводится.
Есть предположения, почему .play() не запускается в useEffect при изменении currentTrack?
Полный репозиторий (только для контекста): https://github.com/CHITRADAVIVEK/Music-player.git

Подробнее здесь: https://stackoverflow.com/questions/798 ... ck-changes

Вернуться в «Javascript»