如何在 Asyncstorage 中设置多个值

Posted

技术标签:

【中文标题】如何在 Asyncstorage 中设置多个值【英文标题】:How do I set multiple values within Asyncstorage 【发布时间】:2019-03-28 12:47:59 【问题描述】:

如何在 Asyncstorge 中设置多个值?因为我正在尝试设置 tokenuser_id 。这些是服务器响应值。 这就是响应的样子

json

 error: 0,
  data: 'User registered Successfully',
  userData:
    pwd: 'lmlmlm',
     phone_no: '9898989',
     user_name: '',
     status: 1,
     date: 2018-10-24T07:12:20.656Z ,
  user_id: 60,
  token: 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.' 

在用户注册后,我在 react native 中写过这样的代码。

.then((response) => response.json())
            .then((responseData) =>
            
                console.log(responseData);
                 AsyncStorage.setItem('id_token', responseData.token),
                 AsyncStorage.setItem('user_id', responseData.user_id),
                    Actions.firstScreen();

                    );

在我的主页中,我正在访问AsyncStorage 中的tokenuser_id

 AsyncStorage.getItem('id_token').then((usertoken) =>
                this.setState('id_token' : usertoken);
                console.log(usertoken);
            )
            AsyncStorage.getItem('user_id').then((uid) => 
              this.setState('user_id': uid);
              console.log(uid);
            )

但我得到的只是令牌,uid 的安慰结果为 null。但是当我安慰 responseData 时,我里面有值。请帮助我

【问题讨论】:

我不知道这是否会成为问题,但我会像这样进行访问:Promise.all([AsyncStorage.getItem('id_token'), AsyncStorage.getItem('user_id')]).then(([id_token, usertoken]) => this.setState(id_token, user_id); console.log(id_token, user_id); ); 【参考方案1】:

请在link查看此文档

所以你可以这样使用:

const items = [['k1', 'val1'], ['k2', 'val2']]
AsyncStorage.multiSet(items, () => 
    //to do something
);

加油!

【讨论】:

如何使用multiget【参考方案2】:
var items = [['k1', 'val1'], ['k2', 'val2']]
AsyncStorage.setItem("KEY", JSON.stringify(items))

【讨论】:

虽然这可能会回答作者的问题,但它缺少一些解释性文字和/或文档链接。如果没有围绕它们的一些短语,原始代码 sn-ps 并不是很有帮助。您可能还会发现how to write a good answer 非常有帮助。请编辑您的答案 - From Review

以上是关于如何在 Asyncstorage 中设置多个值的主要内容,如果未能解决你的问题,请参考以下文章

如何在 JavaScript 中设置多个值以列出值

如何在 xamarin ContentPage 的 BindingContext 中设置多个值

在 Swift 2 中设置多个类属性时的防护

使用 AS3 在 iPhone 和 android 中设置提醒

如何在 UNION ALL 中设置 UNION?

如何在 as3/away3d 中设置 360 度视频投影以保持叠加