我正在使用chrome.tabs.executeScript回调来逐步异步和有序地工作。不幸的是,回调过早发生:
chrome.tabs.update(tab.id, {
url: "https://www.example1.com"
}, function(){
chrome.tabs.executeScript(tab.id, {
code: 'var userData = ' + JSON.stringify(userData) + ';'
}, function() {
chrome.tabs.executeScript(tab.id, {file: "test1.js"}, function(){
setTimeout(function(){
chrome.tabs.update(tab.id, {
url: "https://www.example2.com"
},function(){
chrome.tabs.executeScript(tab.id, {file: 'jquery.js'}, function(){
chrome.tabs.executeScript(tab.id, {file: "test2.js"},
function(res){console.log(res);});
})
})
}, 4000)
});
});
});
即使我们还在第一个网站(" https://www.example2.com"),test2.js和它的回调仍在运行。它会引发错误。