당일 배송 수산마켓 서비스 오늘회 웹사이트 클론 프로젝트
Main Page/Products 부분이였다
구현 하기 위해서 했던 기술들은:
1. 새로운 기술을 사용할때는 언제나 힘들다
힘들다 라기 보다는 익숙치 않아서 어떻게 기술을 사용할지 몰라 많은 시간이 소비되었다. 거기에 React로 Hello World 한번 화면에 render 한것으로 리액트가 뭔지 잘 모르는 상태에서 Javascript의 es6 기능들을 사용해야 한다는것에 많이 해맸던거 같다...
여기에 기능 하나 하나 구현을 해야하는데 Javascript 의 기본 개념들이 많이 없어서 무슨 기능을 어디서 어떻게 써야하는지 힘들었다..
결론
그러니 Google은 나의 친구이며, Error 도 나의 친구이다.
아무도 이것이 정답이라고 바로 알려주지 않는다. 그렇치만 정답 근쳐에 갔다 싶을때 한번 질문하는것도 나쁘지 않다.
2. 사람과의 협업은 재미있으면서도 익숙해져야 한다
결론
본인이 맡은 부분을 최우선시 하면서 남을 도와줄 수 있는 능력을 키우자. 코딩은 혼자서 하는것이 아니고 함께 협업하는것이다.
나만 잘하면 되 마인드 가 아닌 우리같이 힘냅시다 화이팅 마인드가 중요하다
class Products extends React.Component {
constructor() {
super();
this.state = {
title: [],
product: [],
id: [],
};
}
componentDidMount() {
this.fetchProduct();
fetchProduct() {
const values = this.props.match.params.category;
fetch(`${AWS_URL}/product?category=${values}&query=-updated_at`)
.then(res => res.json())
.then(res => {
this.setState({ product: res.data, title: res.category_list });
});
}
render() {
const { title, product } = this.state;
console.log('this.props: ', this.props);
console.log(title, product);
return (
<Layout>
<div className="content-wrapper">
<section className="product-main-container">
<div className="productList-section">
<div className="productList__nav">
<Selector />
</div>
<ul className="productList">
{product.map((item, id) => (
<li className="product-item">
<Link to={`/product/detail/${item.id}`}>
<div className="productCard">
<div className="parent">
<img src={item.image} alt="" key={item.id} />
</div>
</div>
<div className="productCardContent">
<h1 key={item.id}>{item.name}</h1>
<p>
<span key={item.id}>
` {Number(item.price).toLocaleString('kr')}`
</span>
원
</p>
</div>
</Link>
</li>
))}
</ul>
</div>
</section>
</div>
</Layout>
);
}
}
export default withRouter(Products);
내가 만든 틀에 직접 데이타가 들어오면서 사진들이 나오는게 너무 재미있고 신기했었다.
.Map 함수를 처음 사용했지만 정말 .Map의 위대함을 많이 느꼇다.