gpt4 book ai didi

javascript - 将附加对象传递给第 3 方回调

转载 作者:行者123 更新时间:2023-12-03 04:08:20 25 4
gpt4 key购买 nike

我正在编写屏幕截图脚本。为了截取屏幕截图,我使用 html2canvas lib。问题是,当最终截取屏幕截图并调用 onrendered 回调时,我必须进行一些额外的处理,为此我需要能够获取一些我之前使用过的参数。

function onMessageReceived(event){
...
if (dataObj.screenshot)
{
takeScreenshot(dataObj);
}
}

截图功能:

function takeScreenshot(dataObj) {
html2canvas($('body'),{
onrendered: function (canvas) {
var imgString = canvas.toDataURL("screenshot.png");
window.open(imgString);
//do some additional handling here using dataObj
}
});
}

有什么好的直接解决方案吗?我的意思是,不使用全局变量或将此 dataObj 保存在磁盘上。

最佳答案

由于 JS 中作用域的工作方式,dataObj 已经在您的 takeScreenshot 函数的作用域中可用,因为您从其他函数传入了它。所以你需要做的就是在回调中使用它。以下是您如何提醒 dataObjscreenshot 属性的值。

function takeScreenshot(dataObj) {
html2canvas($('body'),{
onrendered: function (canvas) {
var imgString = canvas.toDataURL("screenshot.png");
window.open(imgString);
alert(dataObj.screenshot);
}
});
}

关于javascript - 将附加对象传递给第 3 方回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44445255/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com