Reactjs 在react中从firebase云firestore获取数据
当我试图执行以下代码从firebase cloud firestore获取数据时,我得到了一个空白页 firebase.js:Reactjs 在react中从firebase云firestore获取数据,reactjs,firebase,google-cloud-firestore,Reactjs,Firebase,Google Cloud Firestore,当我试图执行以下代码从firebase cloud firestore获取数据时,我得到了一个空白页 firebase.js: import firebase from "firebase"; var firebaseApp = firebase.initializeApp({ apiKey: "XXXXXXXXXXXXX", authDomain: "XXXXXXXXXXXXX", databaseURL: "
import firebase from "firebase";
var firebaseApp = firebase.initializeApp({
apiKey: "XXXXXXXXXXXXX",
authDomain: "XXXXXXXXXXXXX",
databaseURL: "XXXXXXXXXXXXX",
projectId: "XXXXXXXXXXXXX",
storageBucket: "XXXXXXXXXXXXX",
messagingSenderId: "XXXXXXXXXXXXX",
appId: "XXXXXXXXXXXXX"
})
var db = firebaseApp.firestore();
export { db };
从firebase cloud firestore获取数据的代码:
FormStatus.js:
import React, { Component } from "react";
import { db } from "../firebase";
class FormStatus extends Component {
constructor(props) {
super(props);
this.state = { forms: [], }
}
componentDidMount() {
db.collection('form').get().then(snapshot => {
this.setState({ forms: snapshot })
})
}
render() {
const { forms } = this.state;
return (
<div>
{forms.forEach(doc => {
return <p key={doc.id}> {doc.name}</p>
})
}
</div>
)
}
}
export default FormStatus;
import React,{Component}来自“React”;
从“./firebase”导入{db};
类FormStatus扩展组件{
建造师(道具){
超级(道具);
this.state={forms:[],}
}
componentDidMount(){
db.collection('form').get().then(快照=>{
this.setState({forms:snapshot})
})
}
render(){
const{forms}=this.state;
返回(
{forms.forEach(doc=>{
return{doc.name}
})
}
)
}
}
导出默认表单状态;
我可以在cloud firestore中发布数据,但无法从中获取数据。
。数组上的forEach
方法总是返回未定义的,使用.map
,因此您可以获得元素数组是的,使用map()
代替{forms.map(doc=>{return{doc name}
}}}
,像这样@加亚特里帕利@Jerryc@Jerryc未处理拒绝(TypeError):forms.map不是一个函数
我正在获取此errorconsole.log快照要查看它是什么,它需要是一个数组。映射到工作请附加您正在使用的主要对象的输出console.log(forms)