【发布时间】:2020-08-13 20:13:02
【问题描述】:
我想显示我使用 Firestore 创建的集合的内容,我有一个类型为 timestamp
的字段“日期”当我想显示值时,我得到一个错误:
错误:对象作为 React 子对象无效(找到:对象与键 {seconds, nanoseconds})。如果您打算渲染一组子项,请改用数组。
我在@material-ui 的表格中显示我收藏的内容。
index.js
import Table from '@material-ui/core/Table';
import TableBody from '@material-ui/core/TableBody';
import TableCell from '@material-ui/core/TableCell';
import TableContainer from '@material-ui/core/TableContainer';
import TableHead from '@material-ui/core/TableHead';
import TableRow from '@material-ui/core/TableRow';
import Paper from '@material-ui/core/Paper';
import { FirebaseContext } from '../Firebase'
const Welcome = () => {
const firebase = useContext(FirebaseContext);
const [nameColl, setNameColl] = React.useState([]);
React.useEffect(() => {
const fetchData = async () => {
const db = firebase.db;
const data = await db.collection("nameColl").get();
setNameColl(data.docs.map(doc => ({ ...doc.data(), id: doc.id })));
};
fetchData();
}, []);
return(
<TableContainer component={Paper}>
<Table aria-label="simple table">
<TableHead>
<TableRow>
<TableCell align="right"> Date </TableCell>
</TableRow>
</TableHead>
<TableBody>
{nameColl.map(nameColl => (
<TableRow key={nameColl.id}>
<TableCell align="right"> {nameColl.date} </TableCell>
</TableRow>
))}
</TableBody>
</Table>
</TableContainer>
)
firebase.js
import app from 'firebase/app';
import 'firebase/firestore'
const config = {...};
class Firebase{
constructor(){
app.initializeApp(config)
this.db = app.firestore();
}
}
export default Firebase;
【问题讨论】:
标签: javascript reactjs firebase google-cloud-firestore