如何在JavaScript中将变量传递给回调函数

超能力性螺旋体

我有以下代码,对于如何将其一直传递给onload函数,我不太清楚。

我试图在不同的地方定义它,但是没有成功,特别是因为它的定义需要在传递给document.on方法的函数中进行,因为我想获得this引用的保留权

$(document).ready(function(e) {
    $(document).on('click', "#someId", function(e) {
        e.preventDefault();
        var variable = $(this).attr('name');

        chrome.fileSystem.chooseEntry({
            type: 'openFile', accepts:[{
                extensions: ['txt']
            }] 
        }, 
        function(fileEntry) {
            if (!fileEntry) {
                return;
            }
            fileEntry.file(function(file) {
                var reader = new FileReader();
                reader.onload = function(e) {
                    ////******* how to access variable here? *******\\\\
                    chrome.storage.local.set({'txt': e.target.result});
                };
                reader.readAsArrayBuffer(file);
            });
        });
    });
});

我需要variableonload函数内部访问我该如何通过?

叶子

您可以利用闭包这样做:

onload = function () {
    var variable;
    $(document).on('click', "#someId", function(e) {
        variable = $(this).attr('name');
        // use variable here
    });
    // and here
};

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在puppeteer的$ eval中将变量传递给回调?

如何在express中将参数传递给回调函数?

如何在Python中将参数传递给回调函数?

如何在Node.js中将变量传递给预定义的回调函数

如何在Javascript .filter()方法中将额外的参数传递给回调函数?

如何在WordPress中将PHP变量传递给JavaScript函数?

如何在嵌套函数中将变量传递给javascript

在javascript中将参数传递给回调函数

如何在Node.js中将函数/回调传递给子进程?

React - 如何在回调函数中将参数从子级传递给父级(onClick)

如何在Android中将不同的回调传递给相同的函数

如何在flutter中将参数传递给回调?

如何将变量传递给嵌套的回调函数

如何在Laravel-Charts中将JavaScript回调传递给PHP构造

如何在获取调用函数返回的内容时将局部变量传递给回调?

如何在Javascript中将其他变量传递到Firebase Promise的回调中?

Javascript回调函数传递给Android

如何在Golang回调函数中传递变量?

如何在Python中将变量传递给Shell函数?

如何在IPython中将变量传递给魔术“运行”函数

如何在反应中将变量传递给函数

如何在 Python 中将变量传递给 pyswarm 的函数

在jQuery中将对象传递给回调函数

在void参数中将数组传递给回调函数

如何将变量从回调函数传递给函数调用?

如何在JavaScript中将参数传递给匿名函数?

如何在Node.js中将参数传递给mysql查询回调

如何在php中将正则表达式参数传递给preg replace回调?

如何在Delphi中将对象方法作为回调方法传递给C ++ dll