内線に情報を保存したい。以前はChrome.storage.sync
そうしていましたが、保存した直後に読むと、値を正しく取得できません。おそらくばかげたことをしている....でローカルストレージをクリアしようとしましchrome.storage.sync.clear
たが、それは役に立ちませんでした。
私の保存機能は次のとおりです(現在の方法を見てください):
save: function (type, key, data) {
Storage.storageOption(type).set({key:data}, function () {
console.log("saved data");
});
load: function (type, key) {
Storage.storageOption(type).get(key, function (object) {
console.log("read : " +object);
return object[key];
})}
そしてそれを次のように呼び出します:
Storage.save("", 'path',username);
console.log(Storage.load("",'path'));
これにより、次のようになります。
セーブデータ
未定義
read : [オブジェクト オブジェクト]
アップデート:
OK、オブジェクトのキーと値のペアを渡す方法に問題があるようです。これは、次のように呼び出す場合です。
chrome.storage.sync.set({'path':username}, function(){});
コンソールにストレージを出力すると、出力が向上します。
未定義
シャイ
この未定義が何であるかはまだわかりません...
更新 2:
ストレージへの書き込みに成功した後、ドキュメントの準備ができたときに読み取りを試みます。次のコードを使用します。
var dbdata = chrome.storage.sync.get("path",function(object){
return object['path'];
});
ただし、関数の本体は実行されませんが、ドキュメントには、どのような場合でも実行され、エラーの場合は lastError が設定されると記載されています。
助言がありますか?