Javascript 如何在react中循环、返回和渲染对象
我有一个像这样的对象:Javascript 如何在react中循环、返回和渲染对象,javascript,reactjs,firebase,firebase-realtime-database,Javascript,Reactjs,Firebase,Firebase Realtime Database,我有一个像这样的对象: { "startups" : { "startup0":{ "achievements" : "Is done!", "how_build" : "In python and using google visio api", "inspiration" : "All the hot dogs in the world", "proyect_name" : "Hog dog or not Hot dog", "team"
{
"startups" : {
"startup0":{
"achievements" : "Is done!",
"how_build" : "In python and using google visio api",
"inspiration" : "All the hot dogs in the world",
"proyect_name" : "Hog dog or not Hot dog",
"team" : {
"Steven Anderson" : {
"area" : "CEO",
"email" : "sdandersonz97@gmail.com",
"expertise" : "full-stack engineer"
}
},
"what_does" : "Say is the image is a hot dog or not"
},
"startup1":{
"achievements" : "Is done!",
"how_build" : "In python and using google visio api",
"inspiration" : "All the hot dogs in the world",
"proyect_name" : "Big Brother",
"team" : {
"Steven Anderson" : {
"area" : "CEO",
"email" : "sdandersonz97@gmail.com",
"expertise" : "full-stack engineer"
}
},
"what_does" : "Say is the image is a hot dog or not"
}
}
}
我在此表单中初始化我的状态:
this.state={
startups:[]
在这里,我调用firebase设置我的状态:
componentDidMount(){
const rootRef = firebase.database().ref().child('startups')
rootRef.once('value', snap =>{
this.setState({
startups: this.state.startups.push(snap.val())
});
}
))
}
我尝试了不同的循环方式:
一,
二,
然后我调用fire base数据库来设置我的状态并工作,但是我不能循环到每次启动来在我的div
中呈现这些值
如何循环此对象并在render()
方法中渲染每个值?
我感谢你的帮助你可以这样做
render{
return(
<div>
{
this.state.startups.map(function(startups,i)
{
<li key={i}>{startups.achievements}</li>//in whatever element you want to print
},this)
}
</div>
)
}
渲染{
返回(
{
this.state.startups.map(函数(startups,i)
{
{startups.aclements} //在您想要打印的任何元素中
},本页)
}
)
}
有关更多详细信息,请阅读es6中的map或forEAch,您可以这样做
render{
return(
<div>
{
this.state.startups.map(function(startups,i)
{
<li key={i}>{startups.achievements}</li>//in whatever element you want to print
},this)
}
</div>
)
}
渲染{
返回(
{
this.state.startups.map(函数(startups,i)
{
{startups.aclements} //在您想要打印的任何元素中
},本页)
}
)
}
有关更多详细信息,请阅读es6中的map或forEAch,如果
启动对象
Object.keys(startups).map((startup) => {
return (
<div>{startups[startup].proyect_name}</div> //for example
)
})
Object.keys(启动).map((启动)=>{
返回(
{startups[startup].proyect\u name}//例如
)
})
如果启动对象
Object.keys(startups).map((startup) => {
return (
<div>{startups[startup].proyect_name}</div> //for example
)
})
Object.keys(启动).map((启动)=>{
返回(
{startups[startup].proyect\u name}//例如
)
})
使用:Object.keys(objectName)
循环对象
var数据={
“创业公司”:{
“创业0”:{
“成就”:“完成了!”,
“如何构建”:“使用python并使用google visio api”,
“灵感”:“世界上所有的热狗”,
“项目名称”:“是否是热狗”,
“团队”:{
“史蒂文·安德森”:{
“区域”:“首席执行官”,
“电子邮件”:sdandersonz97@gmail.com",
“专业知识”:“全堆栈工程师”
}
},
“what_所做的”:“说图像是否是热狗”
},
“创业1”:{
“成就”:“完成了!”,
“如何构建”:“使用python并使用google visio api”,
“灵感”:“世界上所有的热狗”,
“项目名称”:“老大哥”,
“团队”:{
“史蒂文·安德森”:{
“区域”:“首席执行官”,
“电子邮件”:sdandersonz97@gmail.com",
“专业知识”:“全堆栈工程师”
}
},
“what_所做的”:“说图像是否是热狗”
}
}
}
Object.keys(data.startups).map(函数(属性){
console.log(data.startups[property].成就);
})
使用:Object.keys(objectName)
循环对象
var数据={
“创业公司”:{
“创业0”:{
“成就”:“完成了!”,
“如何构建”:“使用python并使用google visio api”,
“灵感”:“世界上所有的热狗”,
“项目名称”:“是否是热狗”,
“团队”:{
“史蒂文·安德森”:{
“区域”:“首席执行官”,
“电子邮件”:sdandersonz97@gmail.com",
“专业知识”:“全堆栈工程师”
}
},
“what_所做的”:“说图像是否是热狗”
},
“创业1”:{
“成就”:“完成了!”,
“如何构建”:“使用python并使用google visio api”,
“灵感”:“世界上所有的热狗”,
“项目名称”:“老大哥”,
“团队”:{
“史蒂文·安德森”:{
“区域”:“首席执行官”,
“电子邮件”:sdandersonz97@gmail.com",
“专业知识”:“全堆栈工程师”
}
},
“what_所做的”:“说图像是否是热狗”
}
}
}
Object.keys(data.startups).map(函数(属性){
console.log(data.startups[property].成就);
})
我看不到您尝试过的循环的任何代码。我看不到您尝试过的循环的任何代码。它返回此类型错误:this.state.startups.map不是函数如果使用映射函数请确保对象是数组它返回此类型错误:this.state.startups.map不是函数如果您可以使用map函数
Object.keys(startups).map((startup) => {
return (
<div>{startups[startup].proyect_name}</div> //for example
)
})