6

我正在尝试使用 Tone.js 用 javascript 制作音乐。每当我尝试使其工作时,都会收到错误消息“tonetutorial.html:26 Uncaught TypeError: Tone.Player is not a constructor”。

我在我的 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 下载到我的桌​​面吗?

4

2 回答 2

4

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>可以解决问题。

于 2019-07-15T21:30:16.070 回答
1

您使用的 Tone.js 版本似乎太新,并且仍在开发中。URL 中显示的官方 Tone.js 文档,以及playerGitHub存储库上分支r13的最后一次提交是在 1 月 10 日,这与GitHub 上的 1 月 9 日发布相吻合,这是最新版本。此外,搜索您链接到的代码似乎不包含任何内容,并且GitHub存储库下载版本上的下载链接确实包含.masterPlayer13.4.9Player

相反,请考虑使用:

<script src="https://cdnjs.cloudflare.com/ajax/libs/tone/13.4.9/Tone.min.js"></script>
于 2019-07-15T21:31:08.723 回答