Javascript fabric.js单击按钮返回未定义

Javascript fabric.js单击按钮返回未定义,javascript,jquery,fabricjs,Javascript,Jquery,Fabricjs,我正在使用fabric.js在画布上绘制一些东西 我有一个takePhoto变量,它是 takePhoto = img.set({ left: posX - img.width / 2, top: (character.height + logo.height) + 25 }); log(takePhoto)返回未定义的 有人能解释一下为什么会这样吗? 它实际上是未定义的。但是它以后

我正在使用fabric.js在画布上绘制一些东西

我有一个takePhoto变量,它是

            takePhoto = img.set({
                left: posX - img.width / 2,
                top: (character.height + logo.height) + 25
            });
log(takePhoto)返回未定义的

有人能解释一下为什么会这样吗?
它实际上是未定义的。但是它以后会被定义,因为您在其中设置它的函数是回调。-照片加载后,将设置拍摄照片

你可以看到,因为它确实是这样工作的

setTimeout("console.log(takePhoto);", 400); 

解决方案是在设置takePhoto后,在回调中添加代码。

还有一些其他错误阻止代码运行;TypeError:无法读取的属性“on”undefined@RobQuist如果您阅读了看到的代码,我添加了takePhoto.on('mousedown'),是的,这是一个错误,因为takePhoto=undefinedtry放入console.log(takePhoto);就在起始行下方,它将起作用。如果下面的答案正确,请将其标记为答案,并将此问题标记为“已回答”。谢谢!