이상하게 찾던거 find 메서드로 대체
let id = 0;
authors[Number(authorId) - 1].books.map((item) =>
item.name === book ? (id = item.id) : null
);
아래처럼 바꿈
var id = authors[Number(authorId) - 1].books.find(
(item) => item.name === book
).id;
계속이랬음
let id = 0;
authors.map((author) => (author.name === name ? (id = author.id) : null));
const navigate = useNavigate();
const onHomeClick = () => {
navigate("/");
};
const onAboutClick = () => {
navigate("/about");
};
<ul style={{ listStyle: "none" }}>
<li>
<button onClick={onHomeClick}>Home</button>
</li>
<li>
<button onClick={onAboutClick}>About</button>
</li>
</ul>
아래처럼 그냥 Link로 통일함(navigate써보고싶어서 써보긴했었는데 흠좀무
import { Link } from "react-router-dom";
function Header() {
return (
<div>
<Link to={"Home"}>Home</Link>
<br />
<Link to={"About"}>About</Link>
</div>
);
}
export default Header;
폴더구조를 정리했다. 불필요한 jsx코드도 정리하면서..
D 님의 db구조
{
id: "J._K._Rowling",
name: "J.K.Rowling",
books: [
{
id: "Harry_Potter_I",
name: "Harry Potter I",
chapters: [
"Chapter I",
"Chapter II",
"Chapter III",
"Chapter IV",
"Chapter V"
],
characters: ["Good guy A", "Good guy B", "Bad guy A", "Bad guy B"]
},
S 님 DB구조
{
"author": "J.R.R Tolkien",
"book": [
{
"name": "The Load of the Ring",
"chapters": ["Chapter 1", "Chapter 2", "Chapter 3"],
"characters": [
"ring guy",
"ring guy friend",
"eye",
]
},
내 DB구조
{
id: 1,
name: "J.k Lolling",
books: [
{
id: 1,
name: "harry potter 1",
chapters: [
{ name: "chapter1" },
{ name: "chapter2" },
{ name: "chapter3" },
{ name: "chapter4" }
],
characters: [{ name: "harry" }, { name: "Ron" }, { name: "Hermianone" }]
},
굳이 chapters와 characters를 object어레이 구조로 할필요 없었음..!(찾아줄 필요없었음)