codestates / codestates/art-ground
[Dev Log] 20211009~20211010 / 박지영
- Dominant language
- JavaScript
- Stars
- 7
- Forks
- 9
- PR merge metrics
- No merged PRs in 30d
Description
### **오늘 완료한 작업 목록.**
- [x] 전시 더미데이터 9개 생성 완료.
- [x] about 페이지 레이아웃 리터치
- [x] contact페이지 footer 디자인 리터치

- [x] 마지막 null 페이지 버그 처리. 모바일에서 isLogin 이지만 userinfo가 null일 때 빈화면 말고 아래와 같이 메세지 띄움.(/gallery, /register 페이지)

- [x] register 페이지에서 바탕에 전시 신청 폼은 보이게 함으로써 간접적으로 로그인 유도함.

- [x] 장르 필터 결과 없을 때 메세지 따로 띄우기

- [x] 리뷰목록에서 전시회 제목 뿐만이 아니라 작가명으로도 검색하도록 키워드 데이터 종류 1개 더 추가.
- [x] 팀 발표 영상 편집
—
<검색 시 필터링하는 데이터 키워드 종류 여러개로 늘리기>
- 전시회 목록에서 검색을 할 때 검색 키워드를 전시회 제목 한개로만 뒀었다가, 유저가 작가명으로도 검색해보고 싶지 않을까라는 생각이 들어서 코드를 추가했다
- 기존 전시회 제목과 검색어가 일치하는 전시회만 담은 `result` 라는 배열에다가 `concat` 메소드를 사용하여 작가명과 검색어가 일치하는 요소들을 추가.
- 그리고, 혹시 중복되는 데이터가 있을 수 있어서 `findIndex` 메소드를 사용하여, 객체 배열에서 중복된 속성값을 가지고 있는 요소 제거함.
```jsx
const res = await axios.get("https://art-ground.link/review");
if (search === "") {
//검색 안 할 때
// ...
} else {
//검색
let result = res.data.data.filter((el) => {
return el.title.toLowerCase().includes(search.toLowerCase());
});
result = result.concat(res.data.data.filter((el) => {
return el.author.nickname.toLowerCase().includes(search.toLowerCase());
}));
result = result.filter((arr, index, callback) => index === callback.findIndex(t => t.id === arr.id))
if (sortValue === "최신순") {
return result.sort(
(a, b) => new Date(b.createdAt) - new Date(a.createdAt)
);
} else {
//인기순
return result.sort((a, b) => b.comments.length - a.comments.length);
}
}
```
### **내일 TO DO LIST**
- [ ] 더미데이터 추가(리뷰)
- [ ] null 페이지 있는지 다시 더블체크
- [ ] 마이페이지에서 프로필 정보 수정 시 전시상세 & 리뷰상세페이지에 반영되는지 다시 더블체크
- [ ] about 페이지 내 더미데이터 다시 리터치
- [ ] 토큰 유효기간 만료되었는데 isLogin true로 남겨져 있고 userinfo는 null인 경우 핸들링
- [ ] '**상세페이지(/galleryDetail, /reviewDetail)에서 돌아갈 때만**' /gallery 페이지 마운트 방지 시도해보기(참고:
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.