javascript - 如何在 reactjs 中渲染对象?
问题描述
我的对象是:
我想从recette获取数据-...比如base64
const articleList = Object.keys(this.state.users).map(key => {
Object( this.state.users[key].recettes).map(data => {
// Object.entries( data ).map(infos => {
// console.log(infos + data)
// })
console.log(data)
})
})
解决方案
尝试将您的 base64 编码图像作为 Image 对象的直接源传递。
import React, {Component} from 'react';
export default class Example extends Component {
state = {
images: []
};
componentDidMount(){
let images = [];
let keys = [];
Object.keys(this.state.users).map(key => {
keys.push(key);
});
keys.map(_key => {
Object.keys(this.state.users[`${_key}`].recettes).map(key=> {
let image = new Image();
image.src = this.state.users[`${_key}`].recettes[`${key}`].base64;
images.push(image);
});
});
this.setState({images: images});
}
render(){
return(
<div>
{this.state.images}
</div>
)
}
}
现在我可能在解析您的数据时犯了一个错误,因为我只有它们在图像中并且看不到我为验证和调试而编写的输出,但您明白了。此外,我对收集对象键的过程进行了一些分解,以使其更具可读性并减少嵌套循环的数量。关键是你应该按照你的意图解析你的数据,一旦你到达可以访问 base64 图像的点,你将它作为一个源传递给一个新的图像,并让状态处理其余的。希望这有效并有所帮助。
推荐阅读
- angular - 如何以角度将模态从一个组件打开到另一个组件?
- java - EclipseLink 如何命名外键?
- android - VirtualBox下运行Android应用权限问题
- python - 如何在不覆盖继承类的 __init__ 的情况下将 __init__ def 添加到我的 python
- ios - 在 MoreNavigationController TableView Row 中更改徽章值文本和背景颜色?
- json - 已连接到其他网站,但无法使用 arduino 通过 sim900 连接到 AWS 网页
- spring-boot - Spring注入测试:测试时未注入Bean
- delphi - 无法更改远程文件的日期 - FTP
- python - 将脚本中的任何错误打印到文件 - stderr
- python - 将 2 个列表列表组合到元组列表中