This repository was archived by the owner on Feb 2, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtirolrepo.js
69 lines (59 loc) · 1.73 KB
/
tirolrepo.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
import MainLayout from "../layouts/Main/index";
import Reviewer from "../components/reviewer";
import NewReview from "../components/NewReview";
import RatingStar from "../components/RatingStar";
import { useRouter } from "next/router";
import firebase from "firebase/app";
import {
useDocumentData,
useCollectionData,
} from "react-firebase-hooks/firestore";
const TirolRepo = () => {
const router = useRouter();
const tirol_id = router.query.name || "";
// チロルデータ取得
const [tirol_doc] = useDocumentData(
tirol_id && firebase.firestore().doc(`tirol/${tirol_id}`)
);
// このチロルの全てのレビューを取得
const [reviews] = useCollectionData(
firebase
.firestore()
.collection("review")
?.where("tirol_id", "==", tirol_id),
{ idField: "id" }
);
return (
<MainLayout>
<div className="flex">
{<img src={tirol_doc?.image} className="inline-block w-32 h-32"></img>}
<div className="mx-4">
<h1 className="outlined-rocknroll text-4xl">{tirol_doc?.name}</h1>
<h1 className="my-4">
{tirol_doc?.average_score ? (
<RatingStar rating={tirol_doc?.average_score} />
) : (
<></>
)}
</h1>
</div>
</div>
<div className="py-12">
<NewReview tirol_id={tirol_id} />
<h1 className="mt-12">みんなのチロレポ</h1>
<ul>
{reviews?.map((review) => {
return (
<Reviewer
key={review?.id}
review={review}
isTirolRepoPage={true}
/>
);
})}
</ul>
</div>
</MainLayout>
);
};
export default TirolRepo;