Я пытаюсь использовать Tone.js для создания музыки с помощью javascript. Я получаю сообщение об ошибке «tonetutorial.html: 26 Uncaught TypeError: Tone.Player не является конструктором» всякий раз, когда пытаюсь заставить его работать.
У меня есть в верхней части моего файла HTML. В настоящее время я использую скобки для написания и предварительного просмотра моего кода.
Это моя функция javascript
function sequencer() {
const kick= new Tone.Player("Cartoon_Boing.mp3").toMaster();
const kickInputs = document.querySelectorAll(".kick");
}
sequencer();
это HTML
<script src = "https://cdnjs.cloudflare.com/ajax/libs/tone/14.0.2/Tone.min.js"></script>
<script src=tonetutorial.js></script>
<body>
<h1>Music Maker</h1>
<div class = "drums">
<div class = "kick">
<input type = "Checkbox">
</div>
</div>
</body>
Когда я пытаюсь запустить это, мне говорят, что «Tone.Player» не является конструктором. могу ли я не использовать веб-cdn в этом случае? мне нужно загрузить .min на мой рабочий стол?
Вы также можете загрузить в свою локальную файловую систему, но включая CDN, если у вас есть доступ в Интернет, должно работать. Можете ли вы опубликовать скрипку? И, пожалуйста, прочтите это stackoverflow.com/help/минимально-воспроизводимый-пример
Попробуйте: cdnjs.com/libraries/тон
Вы должны поместить свой код js в функцию загрузки документа.
Я добавил HTML и попытался создать минимальный пример - у меня есть доступ в Интернет, но, похоже, он не работает.
звучит так, как будто этого сообщения об ошибке не должно быть new.
@epascarello В официальной документации используется new: tonejs.github.io/docs/r13/плеер
Если вы запускаете это из файловой системы (т.е. если вы смотрите на адресную строку и URL-адрес выглядит примерно так: «file:///C:/index.html» или «C:\index.html»), попробуйте смешать контент из интернета с контентом из файловой системы вряд ли получится. Вы должны увидеть URL-адрес, начинающийся с «http://». Вам нужно выяснить, как запустить HTTP-сервер локально (или просто загрузить файл).



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


https://cdnjs.cloudflare.com/ajax/libs/tone/14.0.2/Tone.min.js не включает Player.
страница релизов для библиотеки показывает, что последняя выпущенная версия — 13.4.9.
Возможно, 14.0.2 глючит.
Использование <script src = "https://cdnjs.cloudflare.com/ajax/libs/tone/13.4.9/Tone.min.js"></script> решает проблему.
Похоже, используемая вами версия Tone.js слишком новая и все еще находится в разработке. Официальная документация Tone.js для player показывает r13 в URL-адресе, а последняя фиксация ветки master на репозиторий GitHub была 10 января, что совпадает с Выпуск от 9 января на GitHub, который является последним выпуском. Кроме того, поиск по коду, на который вы ссылаетесь, нигде не содержит Player, а ссылка для скачивания в репозитории GitHub загружает версию 13.4.9, которая содержит Player.
Вместо этого рассмотрите возможность использования:
<script src = "https://cdnjs.cloudflare.com/ajax/libs/tone/13.4.9/Tone.min.js"></script>
@CharlieBakes Нет проблем, пожалуйста, примите ответ, который помог лучше всего.
Не могли бы вы предоставить HTML-код, который вы используете для включения этих скриптов? Возможно, вы либо загрузили свой код перед библиотекой Tone, либо ваш URL-адрес Tone CDN неверен.