为了账号安全,请及时绑定邮箱和手机立即绑定

有办法只将部分字符串对象保存到异步存储中吗?

有办法只将部分字符串对象保存到异步存储中吗?

holdtom 2022-10-27 14:41:53
有办法只将部分字符串对象保存到 async-storage 中吗?例如,如果在“result.userPrincipalName”中保存“bob23@hotmail.com”,所以我希望它只保存“bob23”,那么该怎么做呢?await AsyncStorage.setItem(          'AZURE-USERNAME',          JSON.stringify(            result.userPrincipalName.substring(0, data.indexOf('@'))          )        );
查看完整描述

3 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

你公寓这样的事情。


您可以在某个字符之后删除部分字符串。


正如我在文档中看到的那样。它存储为键值对。


所以我做出了改变


let data = JSON.stringify(result.userPrincipalName);


//here substring will remove characters after and including `@` 

data = data.substring(0, data.indexOf('@'));

await AsyncStorage.setItem('AZURE-USERNAME', data);


查看完整回答
反对 回复 2022-10-27
?
弑天下

TA贡献1818条经验 获得超8个赞

我相信您需要在顶层处理您想要的数据(将新输入添加到用户/数据库中的新字段以及所需数据等。我不知道您是从哪里得到的userPrincipalName)。


但是,如果不可能,您可以按照以下方式进行操作:


const name = result.userPrincipalName.split('@')[0];


if (!name) throw new Error('Invalid email');


await AsyncStorage.setItem('AZURE-USERNAME', name);


查看完整回答
反对 回复 2022-10-27
?
杨__羊羊

TA贡献1943条经验 获得超7个赞

只需您可以split在 Javascript 中使用函数。更多信息

//Split the mame using split function

const splitName = result.userPrincipalName.split("@");


//Get the split value and save it

//After you splitting [0] mean first character set

const name = splitName[0];


//Save it to AsyncStorage

await AsyncStorage.setItem("AZURE-USERNAME", JSON.stringify(name));


查看完整回答
反对 回复 2022-10-27
  • 3 回答
  • 0 关注
  • 81 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信