Next.js ReferenceError:未定义音频缓冲区

Next.js ReferenceError:未定义音频缓冲区,next.js,tone.js,Next.js,Tone.js,我正在尝试在下一个.js项目中使用tone.js。 当我运行或构建时,会出现以下错误“ReferenceError:AudioBuffer未定义” 我已经在codesandbox中隔离了tone.js代码,它工作得非常好。 但不是在next.js应用程序中 ReferenceError: AudioBuffer is not defined at ki (/node_modules/tone/build/Tone.js:1:117922)``` 是一种web浏览器,它不存在于node

我正在尝试在下一个.js项目中使用tone.js。 当我运行或构建时,会出现以下错误“ReferenceError:AudioBuffer未定义”

我已经在codesandbox中隔离了tone.js代码,它工作得非常好。

但不是在next.js应用程序中

ReferenceError: AudioBuffer is not defined
    at ki (/node_modules/tone/build/Tone.js:1:117922)```

是一种web浏览器,它不存在于node.js中。您遇到的错误是因为使用
AudioBuffer
的代码无法在服务器上运行。您只需要在浏览器中实例化该部分代码。这通常在
useffect
hook中完成,或者在服务器上,您可以首先检查
window
对象是否已定义。

谢谢,我在上面的codesandbox中修改了我的示例,以实例化useffect hook中的新音调。Noise并将其分配给state。它现在在我的next.js代码中工作:)