@Type(() => User) readonly user: User; 위의 코드를 작성했더니 아래 오류가 났다. "User" only refers to a type, but is being used a value here class-transformer 공식 문서를 찾아보니 @Type 내에 작성하는 type 은 interface 가 아닌 class 를 사용하라고 되어 있었다. User interface 를 User class 로 만들면 해결!
전체 글
백엔드 개발자 | 프로젝트를 하며 겪은 일들을 기록합니다.duplicated files or mocks. please check the console for more info... npm run ios 를 실행하니 이런 오류가 났다. 1번째 원인으로는 package.json 파일의 name 값이 react-native 규칙과 다르다는 것이었다. (이걸 왜 콘솔에서 표시를 안해주냐고..) name 을 규칙에 맞게 바꿔주면 해결된다. 2번째 원인으로는, 아마 이런 메시지가 떴을 것이다. mokPath1 : 'package.json', mokPath2 : 'another:\\package.json' 루트 폴더 내에 package.json 파일이 두 개라는 것이다. 루트폴더 말고 다른 폴더에 있는 package.json 파일을 삭제하고 터미널 종료 후 다시 실행하면 ..
useAsync() 는 react-async 라이브러리에서 제공하는 hooks 다. react component 에서 비동기 통신으로 받아온 데이터를 쓸 때, 함수형 컴포넌트 앞에 async 를 붙여주면 오류가 뜬다. 이럴 때 useAsync() 를 사용한다. 사용법은 이렇다. export const searchDetailById = async ({ id }) => { const { data: result } = await axios.get( `https://www.serveradress?id=${id}` ); return result; }; import { useAsync } from "react-async"; import { searchDetailById } from "./Data"; function..
원래 데이터에는 없고, 서버에서 비동기 요청으로 받아온 데이터를 이용해서 원래 데이터를 정렬하고 싶어 아래처럼 적었다. 그런데 오류가 났다. const sortArray = (array, name) => { return array.sort( async (a, b) => { const x = await a.searchDetailById(a.id); const y = await b.searchDetailById(b.id); return x - y; } ); }; 이런 식으로 sort 커스텀 함수를 async 로 사용하고 싶을 때.. sort 커스텀 함수는 async 를 쓸 수 없다. 당연하다... 저러면 promise 를 반환하니 말이다. sort 에 async 를 쓰고 싶다면 아래처럼 promise.all..
react native 는 react 기반이기는 하지만 사용하는 태그(컴포넌트, 요소) 가 살짝 다르다. react 에서는 html 태그를 그대로 이용해도 괜찮은데 react native 는 자체 제공하는 컴포넌트를 사용해야 한다. 또 스타일 적용하는 법도 다르다. html, react 는 부모에게 스타일을 적용해주면 자식의 텍스트들에도 스타일이 적용되는데, react native 는 스타일을 적용할 데에 직접 style 을 넣어줘야 한다. 프로젝트 생성 시 볼 수 있는 컴포넌트들을 정리해보면 다음과 같다. component (tag) description View div 랑 같음 Text 텍스트에 스타일 주는 용도 SafeAreaView 아이폰의 경우 상단의 m 자 모양까지 화면이 꽉 차는 경우가 있는..
react native 를 시작하는 방법이 두 가지가 있는데, 하나는 expo 라는 것이고 하나는 cli 다. expo 는 시작하기도 쉽고 배포하기 쉽다. 단... 앱이 무진장 무거워지는데다 네이티브 link 가 안된다. 그래서 눈을 돌린 것이 cli 다. cli 는 시작하기 좀 번거롭고 배포하기도 어렵지만, expo 앱에 비해 가볍고 네이티브 link 가 된다. React native Cli 설치 react native cli 를 위해 다음의 사항들이 필요하다 - nodejs : js 런타임 - yarn : nodejs 패키지 관리자 - watchman : 소스코드 변경이 일어나면 자동 갱신 - react-native-cli : 우리가 써야할 애 ^^ - xcode : ios 네이티브 개발 툴 - co..
네이티브 앱 개발은 각 플랫폼에 맞는 언어, 맞는 툴을 써서 개발을 해야 한다. 실제 앱을 개발하려면 여러 플랫폼에서 제공되어야 이점이 크다. 하지만 안드로이드 스튜디오, xcode, java, kotlin, swift ... 등등 필요한 지식을 앱 개발을 위해 깊게까지 공부하는 건 좀 무리가 있다 판단되었다.. 난 앱 개발자도 아니고.. 취미로 하는 수준에 저 정도 역량이 갖춰진다면 좋겠지만 시간이 없다 시간이... 당장 회사에서 내 역량 키우기도 바쁘다 -_- 그러던 와중에 react native 라는 걸 알게 되었다. react로 앱개발을 할 수 있다니? 심지어 여러 플랫폼을 단 한방에 지원해준다니? 마침 회사에서 react 를 다루기도 하고, 취미로 앱개발 하기엔 적당하다 생각되어 당장 레퍼런스를..
error: 'nestJS/server/' does not have a commit checked out fatal: adding files failed git add . 커맨드를 실행시키니 이런 에러가 떴다. 원인은 해당 폴더에 .git 이 별도로 있기 떄문이었다.. 해당 폴더에 가서 숨김 폴더 표시 처리를 하면 숨어있던 .git 폴더가 나온다. 그걸 삭제하고 다시 명령어를 실행하면 해결됨! 참고) mac 에서 숨김폴더 표시는 command + shift + . 를 누르면 된다.