3

Chrome 拡張機能を作成しようとしていますが、壁にぶつかっています。

ブラウザー アクション ポップアップを使用して、値をローカル ストレージ (拡張ストレージ) に書き込み/変更できるようにしたいと考えています。

次に、格納された値をコンテンツ スクリプトで使用したいと考えています。

私が読んだことから、背景ファイルが必要なように見えますか? 確信はないけど。

いくつかのコード化された例は非常に高く評価されます!

ご協力いただきありがとうございます!

4

2 に答える 2

3

chrome.storageAPIを使用すると、バックグラウンド ページをプロキシとして使用することを回避できます。これは、コンテンツ スクリプトから直接利用できるストレージ ソリューションです。

localStorageこれとChrome 拡張機能のコンテキストとの比較を次に示します。


注意すべき重要なことは、これは非同期であるため、 を使用するよりもコードが少し複雑になるということlocalStorageです。

/* ... */
chrome.storage.local.get('key', function(value){
  // You can use value here
});
// But not here, as it will execute before the callback
/* ... */

しかし、公平を期すために、バックグラウンドをデータのプロキシとして使用する場合、メッセージの受け渡しは依然として非同期です。


localStorageデータが渡されると、同期キャッシュとして機能すると主張できます。

しかし、そのオブジェクトは Web ページと共有されており、これは安全ではなく、リスナーによって一度初期化され、最新の状態に保たれたlocalStorage独自の同期ストレージ キャッシュを持つことを誰も止めません。chrome.storage.local.get(null, /*...*/)chrome.storage.onChanged

于 2014-09-02T14:55:12.193 に答える