使用传递给 chrome 扩展的函数消息中的值

问题描述

我正在尝试从后台脚本获取消息到内容脚本并使用该函数的值。 这是代码 background.js

var port = null;
var mesaj;
port = chrome.extension.connectNative('_com.test.download_');

chrome.runtime.onMessage.addListener(
  function(request,sender,sendResponse) {
  
  port.postMessage(request.web_res);
 
  port.onMessage.addListener((response) => {mesaj=response;});
  sendResponse({mesaj});
  console.log(mesaj);   
  }
);

content.js

        for(var i = 0; i < _allImagesList_.length; i++)
        {   
            var address = _allImagesList_[i].src;
            var timestamp = new Date().getTime();
        
            
            var GonderAl=function(response,sendResponse) {
            this.durum= response.mesaj;};
            
            chrome.extension.sendMessage({web_res: _allImagesList_[i].src},GonderAl.bind(this));
            console.log(durum);
    
            _allImagesList_[i].src=_allImagesList_[i].src+"?i_fix="+timestamp
                

        }

当我运行脚本时,我只在控制台上看到“未定义”值。 我从这个链接中得到了帮助 Scope in chrome message passing

我不熟悉 java 和 chrome 扩展。我只是想学习新东西。

有没有办法在函数外使用该值。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)