0

Devtools ページから Chrome Storage API にアクセスする Chrome 拡張機能を作成しています。chrome.storage.local 変数 (get/set 関数を使用) を使用できますが、それらを呼び出すとコールバックが呼び出されません。バックグラウンド ページを使用してストレージ API にアクセスすると、期待どおりに動作します。

もちろん、バックグラウンド ページを介してリクエストを送信し、メッセージを介して Devtools ページに渡すこともできますが、よりクリーンなアプローチを探しています。私は何か間違ったことをしていますか?私の問題を説明するために、私が対処していることの小さなサンプルを作成しました。ここからダウンロードする準備ができています。http://g2f.nl/0w2kko9 .

これには、API が使用可能であるが期待どおりに機能しないことを確認する次のテストが含まれます。

document.getElementById("p").innerHTML += "chrome.storage.local.set = " + !!chrome.storage.local.set
+ "<br>chrome.storage.local.get = " + !!chrome.storage.local.get;

chrome.storage.local.set( {'foo' : 'bar'} , function () {
    document.getElementById("p").innerHTML += '<br>foo = bar';
});

setTimeout(function () {
    document.getElementById("p").innerHTML += '<br>That was one second';
    chrome.storage.local.get('foo', function (result) {
        document.getElementById("p").innerHTML += '<br>foo = ' + result;
    });
}, 1000);
4

0 に答える 0