codestates / codestates/sagaksagak-client
[✍️ Dev Log] 황순은 / 21-07-12
- Dominant language
- JavaScript
- Stars
- 4
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
### 오늘은 어떻게 프로젝트에 기여했나요?
- recommendation 구현
- search, roomList 로직 병합
- infinite scrolling 응답 설계 및 구현
- search promise 에러핸들링
- category 관심도 util함수 구현
### 오늘의 프로젝트에서 힘든 점은 무엇인가요?
- recommendation 구현하면서 코드가 점점 가독성이 낮아져서 에러핸들링시 힘들었다.
- 비동기처리 모듈 안에서 promise.all는 다른 프로세스를 사용하는듯 하다. 병렬처리를 await로만 해야하나 고민이다.
```js
let search = [];
let recommends = [];
if (userInfo.search !== null) {
let keyword = JSON.parse(userInfo.search)
for (let i = 0; i < keyword.length; i++) {
if (Array.isArray(keyword[i])) {
for (let j = 0; j < keyword[i].length; j++) {
search = search.concat(await room.findAll({
where: {
[Op.or]: [
{ roomName: { [Op.like]: `%${keyword[i][j]}%` }, valid: true },
{ category: { [Op.like]: `%${keyword[i][j]}%` }, valid: true }
]
}, raw: true
}))
}
} else {
search = search.concat(await room.findAll({
where: {
[Op.or]: [
{ roomName: { [Op.like]: `%${keyword[i]}%` }, valid: true },
{ category: { [Op.like]: `%${keyword[i]}%` }, valid: true }
]
}, raw: true
}))
}
}
}
if (userInfo.category !== null) {
let userCategory = JSON.parse(userInfo.category);
for (let i = 0; i < userCategory.length; i++) {
recommends = recommends.concat(await room.findAll({
where: { category: String(Object.keys(userCategory[i]).join()), valid: true },
raw: true
}))
}
}
```
### 내일은 프로젝트에 기여하기 위해 무엇을 해야 하나요?
- [ ] 전체 기능 에러핸들링
- [ ] 배포단 test
- [ ] 코드 정리
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.