p5.js: keyIsPressed не определено - PullRequest
0 голосов
/ 05 мая 2018

Я пытаюсь проверить события клавиатуры в функции draw(), поскольку мне приходится синхронно изменять глобальную переменную (поэтому я не могу просто поместить свой код для событий клавиатуры в отдельную функцию keyTyped()). Проблема в том, что когда я использую переменную keyIsPressed внутри функции draw(), появляется следующая ошибка:

Uncaught ReferenceError: keyIsPressed is not defined

Ниже мой код:

var myp25;

var mazeDisplay = function(p) {
    p.setup = function() {
        var canvas = p.createCanvas(400, 400);
        p.background("#ff3056");
    }

    p.draw = function() {
        if (keyIsPressed === true) {
            console.log("key pressed.");
        }
    }
};

myp25 = new p5(mazeDisplay, "canvas2-wrapper")

Но я слежу за реализацией переменной keyIsPressed, как показано в этой ссылке: https://p5js.org/reference/#/p5/keyIsPressed

1 Ответ

0 голосов
/ 05 мая 2018

Вы используете режим экземпляра , поэтому каждая функция и переменная P5.js должна использовать вашу ссылку на эскиз. В вашем случае это ваша p переменная.

if (p.keyIsPressed === true) {

поэтому я не могу просто поместить свой код для событий клавиатуры в отдельную функцию keyTyped ()

Вы можете, вам просто нужно использовать переменную p.

p.keyTyped = function() {
  // whatever
}
...