javascript - React Native - 我想在以前的数组中推送新项目,如连接或推送
问题描述
我尝试了以下操作,其中国家是我想使用文本输入推送/添加到预先存在的国家/地区的新项目,并连接到以前的数组数据,例如这样。
例如
saveData = async () => {
try {
let countries = AsyncStorage.getItem('countries');
AsyncStorage.setItem('countries', countries.concat(this.state.country));
alert('Data successfully saved')
console.log('countries',countries)
} catch (e) {
alert(e)
}
}
//我尝试了很多解决方案..
var country = await AsyncStorage.getItem('countries'); AsyncStorage.setItem('countries', countries += JSON.stringify(country));
//我的输出是这样的, 例如:“name”“email”“address”
表示没有逗号没有括号,如数组
我想要这样的输出,例如 ['name','email','address']
我尝试了很多解决方案,但没有得到结果。有谁能够帮我?
解决方案
希望这对你有用
const saveData = async () => {
try {
let countries = AsyncStorage.getItem("countries")
if (countries) {
countries = JSON.parse(countries)
AsyncStorage.setItem(
"countries",
JSON.stringify(countries.push(this.state.country))
)
} else
AsyncStorage.setItem("countries", JSON.stringify([this.state.country]))
alert("Data successfully saved")
console.log("countries", countries)
} catch (e) {
alert(e)
}
}
推荐阅读
- java - 线程“main”中的异常语法错误:找不到此模块。Java Alloy 程序未编译
- vb.net - 将图片框添加到 Windows 窗体
- node.js - 我正在尝试使用 multer 进行多个(视频和图像分别在单独的文件夹中)上传
- laravel - Laravel mix - 更改生产 CSS 输出选项
- node.js - 已解决:使用 Bot Framework SDK 4 向 MS 团队发送自适应卡时出现 onTurnError
- c# - App_Code 编译不会清理旧程序集
- java - 我正在尝试从 RFID 读取数据。但是类 RFIDEventListener 没有被调用。有人可以帮我吗?
- html - 让两个 div 元素相互对齐
- android - 如何通过 adb 在 Android 中获取新消息
- java - 如何使用 testcontainers 和 spring-kafka 准备测试