我正在使用redux-persist来保存我的redux阶段在react Native中的异步。由于它是一个新应用程序,因此我不断更改Redux初始状态的结构,以适应新功能或修复。但是,当我重新加载该应用程序时,它被Redux-Persist(补液)持续存在的旧状态所吸引。
我如何获得Redux-Persist来保存新的初始状态,而无需在我的开发环境上写迁移?
我添加了一个组件函数,该功能可以清除持久状态并立即重新加载应用程序。该功能是通过按钮调用的,仅在开发环境上可用。
import { persistor } from '../../AppContainer' // adjust this line for you
import RNRestart from 'react-native-restart'
clearPersistedState = () => {
persistor.purge()
RNRestart.Restart() // reload the React Native Bundle
}
是立即重新加载应用程序的必要条件,因为如果清除持续状态后,任何REDUX操作都会被调用,Redux-Persist将再次保存旧的初始状态(仍在RAM中)。
如果您试图容纳新功能而不是删除您的视图所需的内容,则将AutomerGelevel设置为2,因为它只会覆盖现有的键,并且您添加的任何新键都会添加您提供的初始状态。