問題タブ [asyncstorage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - AsyncStorage が正しくない値を返す
私は反応ネイティブで非常に新しく、これを完全に間違っている可能性があります。反応ネイティブ ドキュメントで提案されているように、AsyncStorage のラッパーを使用しています。私がやっていること:
AsyncStorage コードのラッパーとして機能する Storage という名前のクラスがあります。
/li>別のクラス Auth は、キー auth (既に保存されている) コードで値を探します。
/li>
理想的には、キー「auth」の値が存在するため、「Authkey exists」を出力し、keyExists を true として返す必要があります。しかし、それは反対に起こります。
authKeyExists
さらに診断すると、 promise オブジェクト内のコードが実行されるかなり前に関数が返されることがわかりました。
いくつかの例を見てきましたが、それらはすべて Screen コンポーネント自体で AsyncStorage を使用しています (私も試してみましたが失敗しました)。ストレージ クラスを使用して AsyncStorage を抽象化したいと考えています。どこが間違っているのか教えてください。
javascript - Navigator と AsyncStorage はネイティブに反応します
こんにちは、私は反応ネイティブの初心者で、現在 AsyncStorage について学んでいます。
ナビゲーターをレンダリングする条件を実装したい。AsyncStorage に値キーがある場合、初期ルートは Page2 に進み、AsyncStorage に値キーがない場合、初期ルートは Page1 に進みます。
アプリを閉じて再度開くと、キーがあるかどうかに対応するページが表示されます。助けてください。
これが私がこれまでに行ったことです:
react-native - React Native - AsyncStorage に保存されているものを確認するには?
いくつかの項目を React Native に保存しAsyncStorage
、chrome デバッガーと iOS シミュレーターを使用しています。
反応ネイティブなしで、通常の Web 開発を使用localStorage
して、保存されたlocalStorage
アイテムを下に表示できましたChrome Debugger > Resources > Local Storage
React NativeにAsyncStorage
保存されたアイテムを表示するにはどうすればよいですか?
ios - AsyncStorage データは、AppGroup 内の他のアプリで利用できますか?
アプリ グループ内の他のアプリで AsyncStorage 値を使用できるようにする方法に関するドキュメントが見つからないようです。特に、コア アプリで取得したユーザー データにアクセスしたいキーボード拡張機能があります。
サポートされていないのではないかと疑っています。サポートされていない場合は、機能のリクエストと考えてください。
react-native - 初期状態のデフォルト値は、redux-persist でストアが再水和される前にロードされます
アプリがredux-persistで起動した後、保存されたデータにアクセスできません。
レデューサーは、初期状態で定義されたデータで初期化されます。前のセッションの状態が AsyncStorage で読み込まれるまでに、コンポーネントは既定のデータで既に表示されています。
データが保存され、正常にフェッチされることはわかっています。別の画面に移動して戻ってくると、データが正しく表示されていることがわかります。状態と小道具をデバッグすると、これが非同期タイミングの問題であることも示されます。
ストアが再水和した後、redux コンテナーのロードを遅らせるにはどうすればよいですか。または、ストアの読み込みが完了したときにコンテナ (およびその子) を強制的に更新して更新することはできますか?
これが私が試したことです。ストアを構成するには:
これが他のすべてのコンポーネントを更新することを期待して (redux のすべてのレデューサーはアクションで呼び出されるため)、ストアの読み込みが終了したときにトリガーされるアクションを作成しようとしました。
そしてそれはレデューサーです: import { REHYDRATE_STORE } from '../actions/types' const initialState = { storeIsReady: false }
しかし、リハイドレーションが完了すると storeIsReady 状態が true に変わりますが、コンテナー コンポーネントを強制的に更新する方法がまだわかりません。
react-native - React Native - 新しいアイテムを既存の AsyncStorage キーにプッシュしますか?
アイテムを格納しAsyncStorage
、新しいデータをそれぞれのキーにプッシュする必要があるシナリオがいくつかあります。AsyncStorage
そのうちの 1 つは、次のように保存されている 10 か国のリストです。
私は次のことを試しました。country
既存のにプッシュ/追加したい新しいアイテムはどこにありますかcountries
:
それはもちろんうまくいきませんでした...
前述のとおり、この機能が必要になるシナリオもいくつかあります。AsyncStorage
再利用可能なreactネイティブ関数を使用して、渡された and を処理しkey
、data
アイテムの設定、または存在する場合はアイテムへのプッシュを処理するソリューションを見つけようとしています。
この機能を効率的に達成する方法はありAsyncStorage
ますか?
javascript - Promise return undefined AsyncStorage
認証を行う反応ネイティブアプリがあります。
トークンの有効期限が切れておらず、利用可能かどうかを確認する次のコードがあります。
しかし、私のコードでは、次のようにします。
なぜこのようになっているのか、誰かが何か考えを持っていますか?私は何か間違ったことをしていますか?
javascript - React Native AsyncStorage getItem は promise ではなく value を返します
ログインフォームがあり、フォームの値を投稿できます。POST リクエストが成功すると、API から認証トークンが返されます。後で参照できるように、このトークンをローカル ストレージに保存する必要があります。この認証トークンを保存するために、AsyncStorage を使用しています。AsyncStorage.setItem(STORAGE_KEY, responseData.auth_token);
setItem メソッドを使用してデータを保存しました。
これをコンソールに記録すると、次のようになります。
console.log(AsyncStorage.setItem(STORAGE_KEY));
このような promise オブジェクトとして返されます
: 物体
AsyncStorage.getItem メソッドから正確な値を取得するにはどうすればよいですか?
これは私の取得方法です
ところで、彼らが使用したドキュメントでは待機しています。それを使ってみましたが、ページが読み込まれません。スクリーンショットを添付してください。