猿问

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

有办法只将部分字符串对象保存到 async-storage 中吗?例如,如果在“result.userPrincipalName”中保存“bob23@hotmail.com”,所以我希望它只保存“bob23”,那么该怎么做呢?


await AsyncStorage.setItem(

          'AZURE-USERNAME',

          JSON.stringify(

            result.userPrincipalName.substring(0, data.indexOf('@'))

          )

        );


holdtom
浏览 82回答 3
3回答

慕森卡

你公寓这样的事情。您可以在某个字符之后删除部分字符串。正如我在文档中看到的那样。它存储为键值对。所以我做出了改变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);

弑天下

我相信您需要在顶层处理您想要的数据(将新输入添加到用户/数据库中的新字段以及所需数据等。我不知道您是从哪里得到的userPrincipalName)。但是,如果不可能,您可以按照以下方式进行操作:const name = result.userPrincipalName.split('@')[0];if (!name) throw new Error('Invalid email');await AsyncStorage.setItem('AZURE-USERNAME', name);

杨__羊羊

只需您可以split在 Javascript 中使用函数。更多信息//Split the mame using split functionconst splitName = result.userPrincipalName.split("@");//Get the split value and save it//After you splitting [0] mean first character setconst name = splitName[0];//Save it to AsyncStorageawait AsyncStorage.setItem("AZURE-USERNAME", JSON.stringify(name));
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答