[英]Why are constants not defined when using p5.js in instance mode?
我可能在這里遺漏了一些非常明顯的東西。 我可以在全局模式下使用p5.js並使用textAlign的常量沒有問題,例如CENTER。
這是全局模式代碼,它工作正常:
function setup() {
var canvas = createCanvas(720, 400);
canvas.parent('main_canvas');
};
function draw() {
textSize(32);
textAlign(CENTER);
text("word", 50, 50);
};
但是,當我嘗試在實例模式中使用CENTER時,我得到:
Uncaught ReferenceError: CENTER is not defined:
這是失敗的實例模式代碼:
var s = function (p) {
p.setup = function() {
p.createCanvas(720, 400);
};
p.draw = function() {
p.textSize(32);
p.textAlign(CENTER);
p.text("word", 50, 50);
};
};
var myp5 = new p5(s,'main_canvas');
關於我在這里缺少什么的想法?
在全局模式下,所有P5.js函數和變量都將添加到全局名稱空間中。 在實例模式中,所有P5.js函數和變量都被添加到傳遞給sketch函數的變量中(在您的情況下,是您的p
變量)。
要使用CENTER
變量,您必須通過p
變量獲取它。
換句話說,你需要這樣做:
p.textAlign(p.CENTER);
您還必須使用其他變量,如mouseX
和mouseY
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.