React Nwetter - home.js
2699 ワード
import React, { useState, useEffect } from "react";
import { dbService } from "myBase";
import Nweet from "components/Nweet";
import NweetFactory from "components/NweetFactory";
const Home = ({ userObj }) => {
// const getNweets = async () => {
// const dbnweets = await dbService.collection("nweets").get();
// dbnweets.forEach((document) => {
// const nweetObject = {
// ...document.data(),
// id: document.id,
// };
// setNweets((prev) => [nweetObject, ...prev]);
// });
// };
const [nweets, setNweets] = useState([]);
useEffect(() => {
dbService
.collection("nweets")
.orderBy("createdAt", "desc")
.onSnapshot((snapshot) => {
const nweetArray = snapshot.docs.map((doc) => ({
id: doc.id,
...doc.data(),
}));
setNweets(nweetArray);
});
}, []);
return (
};
export default Home;
ログイン後の構成画面router
ホームページでツイッター機能を実装
写真をtweet機能に添付して送信し、プレビューを実現できます.
idがtrueの場合、tweetは変更/削除機能を有効にします.
userObjectをパラメータとして取得し、オブジェクトから情報を取得します.
import { dbService } from "myBase";
import Nweet from "components/Nweet";
import NweetFactory from "components/NweetFactory";
const Home = ({ userObj }) => {
// const getNweets = async () => {
// const dbnweets = await dbService.collection("nweets").get();
// dbnweets.forEach((document) => {
// const nweetObject = {
// ...document.data(),
// id: document.id,
// };
// setNweets((prev) => [nweetObject, ...prev]);
// });
// };
const [nweets, setNweets] = useState([]);
useEffect(() => {
dbService
.collection("nweets")
.orderBy("createdAt", "desc")
.onSnapshot((snapshot) => {
const nweetArray = snapshot.docs.map((doc) => ({
id: doc.id,
...doc.data(),
}));
setNweets(nweetArray);
});
}, []);
return (
<div className="container">
<NweetFactory userObj={userObj} />
<div style={{ marginTop: 30 }}>
{nweets.map((nweet) => (
<Nweet
key={nweet.id}
nweetObj={nweet}
isOwner={nweet.creatorId === userObj.uid}
/>
))}
</div>
</div>
);};
export default Home;
ログイン後の構成画面router
ホームページでツイッター機能を実装
写真をtweet機能に添付して送信し、プレビューを実現できます.
idがtrueの場合、tweetは変更/削除機能を有効にします.
userObjectをパラメータとして取得し、オブジェクトから情報を取得します.
Reference
この問題について(React Nwetter - home.js), 我々は、より多くの情報をここで見つけました https://velog.io/@9bin08/React-Nwetter-home.js-y9ui690sテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol