所以我想拖放需要一点时间处理的东西,所以我使用回调。但是,我的.dataTransfer.setData
调用什么也没做,然后从回调中运行。 dataTransfer.setData
myCallback
工作正常,我知道回调正在从控制台日志中运行。
有什么想法或建议可以做得更好吗?
handleDragStart = function(event) {
var foo = [];
this.processFoo(foo,myCallback);
myCallback = function() {
console.log('running callback')
var msg = JSON.stringify(foo);
event.dataTransfer.setData('text/plain', msg); //won't work
}
//event.dataTransfer.setData('text/plain', 'test message'); //works if I uncomment it
}
processFoo = function(foo, callback) {
//pretend this has to talk to some external server and takes a while to respond
foo.push("bar");
callback()
}
谢谢!