我是React Native的新手,我正在创建一个应用程序,我需要将值存储在本地存储中,如Android中的SharedPref.
例如:如果用户登录,则控制权应转到仪表板,否则应出现登录屏幕
先感谢您
Sof*_*ory 13
对于仍在寻找此功能的任何人,RN异步存储已被弃用。你可以使用这个:https : //github.com/react-native-community/react-native-async-storage。
AsyncStorage 是存储您可以使用的一些数据的最佳选择,如下例所示:
AsyncStorage.setItem('access_token', responseData.data.access_token);
Run Code Online (Sandbox Code Playgroud)
这是我的单独组件,您可以在其中创建单独的函数来导入任何位置示例:
export const isSignedIn = () => {
return new Promise((resolve, reject) => {
AsyncStorage.getItem(USER_KEY)
.then(res => {
if (res !== null) {
resolve(res);
} else {
resolve(false);
}
})
.catch(err => reject(err));
});
};
Run Code Online (Sandbox Code Playgroud)
如何导入?
import { isSignedIn, url } from "./Auth";
isSignedIn()
.then(res => {
this.changeLoaderStatus();
if(res){
res; //this is your token
}
}
Run Code Online (Sandbox Code Playgroud)
您将从以下网址获取该包:
https://github.com/react-native-async-storage/async-storage
您可以使用同步存储更易于使用比异步存储:
import SyncStorage from 'sync-storage';
...
SyncStorage.set('foo', 'bar');
const result = SyncStorage.get('foo');
console.log(result); // 'bar'
Run Code Online (Sandbox Code Playgroud)
有几种选择可以做这样的事情.
对于大多数基本的东西,您可以使用来自react-native的AsyncStorage,但还有其他选项,如Realm和SQLite,它们是存储设备上数据的库.
如果您使用的是Redux,还可以使用redux-persist.
| 归档时间: |
|
| 查看次数: |
24277 次 |
| 最近记录: |