redux/reactアプリケーションを構築する際には、データベースを使用してデータを保存する必要がありますか、すべてのものがreduxストアに入るだけでよいですか?Redux/Reactアプリケーションにデータベース用の場所がありますか?
データベースが必要な場合は、データベースの呼び出しに最適な場所はどこですか?
redux/reactアプリケーションを構築する際には、データベースを使用してデータを保存する必要がありますか、すべてのものがreduxストアに入るだけでよいですか?Redux/Reactアプリケーションにデータベース用の場所がありますか?
データベースが必要な場合は、データベースの呼び出しに最適な場所はどこですか?
はい通常、状態データのシリアル化とデシリアライズを行う場合があります。これには、セッションやページのリフレッシュ間の状態を保持するだけでなく、アプリケーションがデータを消費するのに役立つクエリ機能も用意されています。
アプリケーションが接続されている場合は、データストレージを管理するリモートエンドポイントにアクセスできる可能性があります。このシナリオでは、mongodb、rethinkdb、sqlserverなどのサーバー側のデータベースが通常の転送方法です
接続されていないブラウザのみのアプリケーションについて話している場合は、常にlocalStorage
に状態をシリアル化できます。私はこれを頻繁に行い、私は通常、ローカルデータを「照会」するための簡単なファサードを作成します。より強力なローカルデータベースが必要な場合は、そこにlocalStorageDBなどのパッケージがあります。ここで
が、これができるかを簡単に示したいくつかのコードです:
db.js
これはstore
import store from 'store'
const clear = (key) => {
if (key) {
return store.remove(key)
}
store.clear()
}
const get = (key, defaultValue) => {
return store.get(key) || defaultValue
}
const set = (key, value) => {
store.set(key, value)
}
export { clear, get, set }
と呼ばれる私が使用してのlocalStorageパッケージの正面に座っているファサードです
トランザクション.js
これはdb
の使用例です。ここでは、セットを取得して設定してクリアします。transactions
import * as db from './db'
const clear =() => {
db.clear('transactions')
}
const transactions = value => {
if (value) {
db.set('transactions', value)
} else {
return db.get('transactions', [])
}
}
export { clear, transactions }
トピックから少し外れていますが、アプリケーションのデータをブラウザに保存している場合(おそらく永続的にそこにとどまる)、localStorageは最良の選択ではありません。ドメインごとに最大5MBのストレージしか得られず、ユーザーが誤ってデータを消去するのは本当に簡単です。長期間のデータストレージは、[IndexedDB](https://developer.mozilla.org/en/docs/Web/API/IndexedDB_API)にはるかに適しています。 [localForage](https://github.com/localForage/localForage)を使用すると、IndexStDBバックエンドを持つlocalStorageのようなAPIを提供することができます。 –
Reduxはフロントエンドアプリケーションの状態を管理するだけです。データを保持しません。 –
Reduxはフロントエンドアプリケーションの状態の状態のみを保存します。つまり、ページをリフレッシュした後も保持され、データベースに状態を保存する必要があります。通常、REST APIの呼び出しなどの標準メソッドを使用します。 –
。私は初心者で、私はこれを得ていませんでした。 –