fabric.js 点击按钮 return 未定义

fabric.js click on button return undefined

我正在使用 fabric.js 在 canvas 上画一些东西。

我有 takePhoto 变量,它是

            takePhoto = img.set({
                left: posX - img.width / 2,
                top: (character.height + logo.height) + 25
            });

console.log(拍照)returns 未定义。

有人能解释一下为什么会这样吗? http://jsbin.com/xoxunepasi/1/edit?js,console,output

它实际上是未定义的。但是它稍后会被定义,因为您设置它的函数是一个回调。 - 在 图片加载后 设置 takePhoto。

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

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

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