blo*_*510 1 webrtc reactjs scriptprocessor web-audio-api
我正在尝试在 React 中创建一个 AudioWorklet。我正在使用 create-react-app 并将在 React 上下文之外工作的脚本导入到 App.jsx 中。它无法实例化我的 AudioWorkletNode 扩展并引发以下错误:
Failed to compile.
./src/worklet/worklet-node.js
Line 2: 'AudioWorkletNode' is not defined no-undef
Run Code Online (Sandbox Code Playgroud)
代码:
// The code in the main global scope.
class MyWorkletNode extends AudioWorkletNode {
constructor(context) {
super(context, 'my-worklet-processor');
}
}
let context = new AudioContext();
context.audioWorklet.addModule('processor.js').then(() => {
let node = new MyWorkletNode(context);
});
Run Code Online (Sandbox Code Playgroud)
同样的代码成功初始化了 AudioWorklet,所以我有点困惑为什么 AudioWorkletNode 没有被识别。
Create React App 配置为强制您使用限定符访问此类浏览器 API window.。这样很明显您正在使用全局,并且没有忘记导入某些内容(这很常见)。
这应该有效:
class MyWorkletNode extends window.AudioWorkletNode {
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3144 次 |
| 最近记录: |