2
クローム拡張機能をビルドしていて、奇妙な問題が発生しています。これは私が背景ページで実行しているスクリプトです:クロム拡張機能読み取り値の問題
function getOpenedTabs() {
var openedTabs = [];
chrome.windows.getAll({}, function(wins) {
for (var w in wins) {
if (wins[w].id !== undefined) {
chrome.tabs.getAllInWindow(wins[w].id, function(tabs) {
for (var t in tabs) {
if (tabs[t].id !== undefined) {
openedTabs.push(tabs[t]);
}
}
});
}
}
});
return openedTabs;
}
chrome.tabs.onCreated.addListener(function(tab){
var openedTabs = getOpenedTabs();
var length = openedTabs.length;
console.log("Quantity of tabs: " + length);
if (length > 20) {
openedTabs.sort(function(a,b){return a.visitCount - b.visitCount});
var t = openedTabs.shift();
chrome.tabs.remove(t.id);
console.log("The extension closed the " + t.title + " tab");
}
});
デバッグモードでは、openedTabs.length
は正しい値を返します。しかし、すべてのブレークポイントを削除すると、openedTabs.length
は常にゼロを返します。
どのような問題がありますか?おかげさまで
ニースの回答、ありがとう – megas