【发布时间】:2016-09-26 00:36:40
【问题描述】:
我正在使用 npm、webpack、babel 环境来编写带有 p5.js 的应用程序。为了能够将草图作为一个模块,我在instance mode 中有草图并将库和附加组件作为模块导入:
import p5 from 'p5';
import 'p5/lib/addons/p5.sound';
import 'p5/lib/addons/p5.dom';
然后我将它们加载到我草图中的窗口:
const sketch = (p5) => {
window.p5 = p5;
...
}
new p5(sketch);
当我尝试使用时:
amp = new p5.Amplitude()
我收到“p5.Amplitude 不是构造函数”错误。我的预测是在窗口上命名库 p5 和使用库中使用 p5.something 之类的构造函数之间存在冲突,例如 p5.Amplitude、p5.Vector、p5.Soundfile。我无法找到在实例模式下使用这些对象或构造函数的解决方法。但是,我可以使用这些 objects 中不需要构造函数的方法。例如,loadSound() 是 p5.Soundfile 的一个方法。以下作品:
sound = p5.loadSound('assets/sound.wav)
但是当我尝试console.log(p5.SoundFile) 时,我得到了不确定。
我迷路了!
【问题讨论】:
标签: javascript ecmascript-6 processing processing.js p5.js