我无法通过控制台记录MouseEvent的mousePressed。我甚至不确定是否将它放在设置函数中是正确的位置?
https://codesandbox.io/embed/withered-monad-jrhyw
import React from 'react';
import Sketch from 'react-p5';
const App: React.FC = () => {
const setup = (p5: any) => {
canvas = p5.createCanvas(window.innerWidth, window.innerHeight);
canvas.mouseWheel((e: MouseEvent) => {
console.log(e); // Wheel Event
});
canvas.mousePressed((e: MouseEvent) => {
console.log(e); // Undefined
});
};
const draw = (p5: any) => {
p5.background(50);
p5.fill(0);
p5.rect(25, 25, 50, 50);
};
return (
<React.Fragment>
<Sketch setup={setup} draw={draw} />
</React.Fragment>
);
};
export { App };发布于 2020-02-14 23:57:42
react-p5库的readme指示您应该使用mousePressed方法作为工具,因此尝试在setup外部定义它,然后传递它:
const mp = (e: MouseEvent) => {
console.log(e);
})
<Sketch setup={setup} draw={draw} mousePressed={mp}/>尽管如此,我确实尝试在setup中定义了其他几个方法,所有方法似乎都工作正常;mousePressed是唯一需要作为道具传递的方法。
发布于 2020-02-15 04:05:39
我已经回答了这个关于开放的GitHub问题的问题,以便只使用一个渠道来跟踪和解决这个问题。Github Issue #16
https://stackoverflow.com/questions/60222225
复制相似问题