Я использую платформу Electron-forge и пытаюсь сделать аудиоплеер.Когда я запускаю свое приложение с npm start
, оно работает отлично.Но когда я компилирую приложение, используя приложение npm run package
в x64, и запускаю из его файла .exe, приложение работает неправильно.Окно создается, но звук не воспроизводится.
Ошибка в console.log: «Uncaught (в обещании) DOMException: не удалось загрузить, поскольку не найден поддерживаемый источник.»
Пути к аудиофайлам определенно правильныеЯ тоже записал их в консоль.
Редактировать: Я обнаружил, что лучше использовать Promise для тега audio
, но проблема все еще сохраняется.Код:
$(document).ready(function () {
prepare_song('D:' + '\\' + 'Downloads' + '\\' + 'audio_1.mp3');
$("#button_play_pause").click(function () {
console.log("click play");
var playPromise = document.querySelector('audio').play();
if (playPromise !== undefined) {
playPromise.then(function () {
console.log("play !");
// triggered from npm start and music is playing
}).catch(function (error) {
console.log("play error:" + error);
// triggered from npm run package (x64 .exe app) Error: NotSupportedError: The element has no supported sources.
});
}
});
});
function prepare_song(filepath) {
console.log(" prepare: " + filepath);
$("#audio").attr("src", filepath);
let audio = document.getElementById('audio');
audio.load();
}