在构建redux / react应用程序时,您是否仍然需要使用数据库来存储数据,还是只需进入redux存储就可以了?
如果需要数据库,哪里是调用数据库的最佳位置?
答案 0 :(得分:0)
是的,通常需要对状态数据进行序列化和反序列化。这有很多用途,不仅可以在会话或页面刷新之间保持状态,还可以提供帮助应用程序使用数据的查询工具。
如果您的应用程序已连接,那么它可能可以访问将为您处理数据存储的远程端点。在这种情况下,服务器端数据库,如mongodb,rethinkdb或sqlserver是通常的前进方式
如果您正在谈论断开连接的仅限浏览器的应用,那么您始终可以将状态序列化为localStorage
。我经常这样做,我通常写一个简单的外观,让我可以查询'本地数据。如果你需要一个更强大的本地数据库,那么有localStorageDB这样的包可以提供帮助。
以下是一些代码,显示了这是多么容易:
<强> db.js 强>
这是一个位于我使用的名为store
的localstorage包前面的外观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 }
<强> transactions.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 }