codestates / codestates/Memory-It

[Error Handling] 'ParsedQs' 형식은 'string' 형식에 할당할 수 없습니다.

Open
#55 0 comments 0 reactions 1 assignee Claimed by @cjhmoves33 View on GitHub
Error! server
Dominant language
JavaScript
Stars
1
Forks
2
PR merge metrics
No merged PRs in 30d

Description

### 어떤 에러인가요?
+ typescript를 이용한 express 서버구축 도중에 parseInt(req.query.KEY)를 시도했을 때 나타난 에러
### 에러 메시지
'ParsedQs' 형식은 'string' 형식에 할당할 수 없습니다.

### 에러 핸들링 방법
+ 쿼리스트링으로 온 요청을 Int타입으로 만들고 싶어서 parseInt(req.query.KEY)를 시도했으나 해당 오류발생
```jsx
'string | ParsedQs | string[] | ParsedQs[]' 형식의 인수는 'string' 형식의 매개 변수에 할당될 수 없습니다.
'ParsedQs' 형식은 'string' 형식에 할당할 수 없습니다.
```
+ 타입스크립트를 이번 프로젝트에서 처음써보는 대다가 학습을 충분한 학습 후 적용시켜본게 아니기때문에 모든게 혼란스러웠다. 특히 혼란스러웠던 점은 parseInt(req.params.KEY)의 경우 해당 오류를 내지않는다는 점이었다. 사용은 비슷하게 할 수 있는데 기본설정된 타입상의 차이같았다.
+ 해당문제에 대한 정확한 정보를 찾기는 어려웠으나 땜빵용 해결방안을 찾았는데 타입스크립트의 **_타입 단언_** 을 사용해서 해당오류와 같이 함수인자의 타입과의 충돌을 해결할 수 있었다.
+ 구글링을 해보니 타입단언은 무분별하게 사용해서는 안되는거같았다. 지금같은 경우에 express.urlencoded로 쿼리스트링을 파싱해주는 것으로 알고있다. 그렇기때문에 현재로서는 타입단언을 사용해도 괜찮을것으로 생각됨..

### 에러 핸들링을 위해 참고한 레퍼런스 링크

[레퍼런스 링크](https://hyunseob.github.io/2017/12/12/typescript-type-inteference-and-type-assertion/)

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.