我想要的是一个书签列表,但我不知道如何在AsyncStorage中保存一系列项目,我的技能是基本的反应。
当我按下按钮"保存到书签"。
时,我只需要保存帖子的功能(发布图片,标题和ID)。export default class PostDetails extends Component {
constructor(props) {
super(props);
const {params} = props.navigation.state;
this.state = {
item: params.item
};
}
render() {
const {item} = this.state;
return (
<Image source={{uri: item.post_image}}/>
<Text> {item.post_id} </Text>
<Text> {item.post_title} </Text>
<Button>
<Text> Save to Bookmark </Text>
</Button>
);
}
}
答案 0 :(得分:4)
我想你想用JSON.stringify(arrayToSave)
;请参阅JSON.stringify()
AsyncStorage
。它会将数组转换为可以保存到const saveBookmarks = async (bookmarksArray) => {
try {
const bookmarksString = JSON.stringify(bookmarksArray);
await AsyncStorage.setItem('@MyStore:bookmarks',bookmarksString);
} catch (error) {
// Error saving data
}
};
<Button onClick={() => saveBookmarks(yourArray)} />
的JSON字符串,然后可以在以后检索。
const theSavedArray = JSON.parse(stringFromAsyncStorage)
要检索它,您可以使用JSON.parse()
; try {
const bookmarksString = await AsyncStorage.getItem('@MyStore:bookmarks');
if (bookmarksString !== null){
// We have data!!
const bookmarksArray = JSON.parse(bookmarksString);
}
} catch (error) {
// Error retrieving data
}
{{1}}