inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

프로젝트로 배우는 React.js

36 블로그 db에서 받아와서 화면에 보여주기

코지코더님 안녕하세요. 강의 열심히 잘듣고 있습니다

330

foxball

작성한 질문수 18

0

코지코더님 안녕하세요. 강의 열심히 잘듣고 있습니다.

강의를 보면서 client(리액트), server(mongoose) 로

작업중입니다.

create/delete/read는 잘 구현이 되었으며,

TodoList 목록중 목록1개를 클릭하면, 나오는 상세User

페이지가 좀 힘드네요 ^^;

클라이언트에서 보내는 값은

1,2,3..... 이런 숫자이고요. server로 넘어가면 string 타입으로 넘어옵니다.

mongoose에 생성된건 objectId 타입이라서, 서로 매칭이 안되네요. 잘몰라서 여쭤봅니다. 방법이 없을까요?

아래는 제 코드 입니다.

  userRouter.get('/board/:userId',async(req,res)=>{
    try{
    const {userId} = req.params;
    const user = await User.findOne({_id:userId})
    return res.status(200).json({success:true, user})
    }catch(err){
    console.log(err);
    return res.status(500).send({err: err.message})
    }
    })

const getPost=(id)=>{
axios.get(`/users/board/${id}`).then((response)=>{
setPost(response.data.user);
})
}

useEffect(()=>{
    getPost(id)
},[])

react redux es6

답변 1

0

코지 코더

몽고디비로 하셔서 objectId로 생성이 되었다면 숫자가 아니라 몽고디비 obejctId를 생성하면서 있는 string을 넣어주셔야겠네요 예) /users/board/4edd40c86762e0fb12000003

그리고 mongoose.Types.ObjectId('4edd40c86762e0fb12000003'); 이런식으로 ObjectId로 변환하셔서 findOne으로 찾아지지 않을까 생각이 듭니다.

UserEffect 빈 배열 사용 질문입니다

0

137

2

Pagination 페이지 별 데이터 불러오기 오류

0

250

1

설명이 부족 한 듯..

0

292

1

pagination nav가 안보여요

0

214

1

블로그 낫 파운드 ㅠㅠ

0

244

1

return (<div></div>)

0

428

2

useState 에 대해

0

213

1

에러떠요..

0

528

2

useCallback 의존성 배열

0

371

1

인자가 필수로 들어가야 하는지 궁금합니다

0

393

1

AxiosError: Network Error가 뜹니다

0

11320

3

리액트 설치하려고 하니 에러가 뜹니다

0

300

1

23강 localhost 질문드립니다!!

0

588

5

renderBlogList 함수는 순수함수가 아니어도 괜찮은가요?

0

284

1

페이지네이션 버그 있습니다.

0

398

1

글 삭제 기능 구현 방법

0

315

1

react-router-dom 버전 업그레이드에 따른 문제

0

411

1

state가 업데이트되는 기준이 궁금합니다.

0

303

1

id가 두번 찍혀요

0

265

2

error handling 2 => ShowPage.js, BlogForm.js에서 에러가 납니다.

0

462

2

에러 핸들링에서 토스트가 2개씩 뜹니다..

0

438

2

36 블로그 db에서 받아와서 화면에 보여주기 에서

0

268

1

13번째 DB에 저장을 따라하고 있습니다.

0

408

2

useParams 가 동작하지 않습니다.

0

815

2