p5.j​​s createCanvas未定义错误。未捕获的ReferenceError

Sof*_*nic 3 javascript p5.js

问题:

我正在尝试在我的简单应用程序中使用p5.j​​s,并将其包括在内:

<script src="static/js/p5.js"> </script>
Run Code Online (Sandbox Code Playgroud)

我尝试过的

如果我放入调试器并在控制台中查看,我确实可以获得p5Color(例如)和其他功能。并且脚本可以很好地加载到页面上。除createCanvas不会自动完成外,当在页面中使用时,抛出上述错误。

为什么?我该如何解决?

wxa*_*tly 5

p5.j​​s除非在页面上看到setup()draw()定义,否则不会加载到“全局模式” 。

选项1-强制全局模式。(请注意,如果执行此操作,createCanvas()将不会setup()在页面加载中发挥很大的作用,因为它将已经在页面加载中运行。)

<script src="static/js/p5.js"> </script>
<script>
    function setup() {
        //...
    }
</script>
Run Code Online (Sandbox Code Playgroud)

选项2-使用实例模式。(如果您真的想从控制台使用p5.js,这可能是最好的选择。)

var s = function( sketch ) {
  sketch.setup = function() {
    sketch.createCanvas(700, 410);
    //...
  };
};    
var myp5 = new p5(s);
Run Code Online (Sandbox Code Playgroud)

  • 谢谢。[P5入门](https://p5js.org/get-started/)显示了这些功能,但确实没有解释其意义。 (2认同)