타입스크립트의 버전이 올라가면 갈수록 타입 추론이 좋아집니다 타입스크립트 5.5 미만에서는 filter를 통해 undefined를 걸러냈더라도 undefined가 걸러졌는지 추론을 하지 못합니다 function makeBirdCalls(countries: string[]) { // birds: (Bird | undefined)[] const birds = countries .map(country => nationalBirds.get(country)) .filter(bird => bird !== undefined); for (const bird of birds) { bird.sing(); // error: 'bird' is possibly 'undefined'. }} 타입스크..

2025년 시점에서 이제 더이상 nodejs 16을 사용하는 람다 함수를 생성할수 없습니다 https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtimes-supported Lambda runtimes - AWS LambdaLambda runtimes Lambda supports multiple languages through the use of runtimes. A runtime provides a language-specific environment that relays invocation events, context information, and responses between Lambda and the function. You ..
TypeORMError: Column "xxx" of Entity "xxx" is defined as enum, but missing "enum" or "enumName" properties. 2개 이상의 엔터티가 하나의 enum 타입을 공유하여 사용하고 있을때, 그리고 enum 타입이 하나의 엔터티 파일에 함께 선언되어있을 경우 내부적으로 순환참조가 발생하여 위와 같은 에러메시지가 발생합니다 해결 방법은 간단합니다 enum 타입을 엔터티와 별도의 파일로 분리하면 됩니다
오래 방치해둔 구글플레이 계정에 들어가보았더니 계정이 정지되었더라구요 그리고 개발자 인증을 요구하였습니다 주소가 표시된 카드, 수도, 전기 명세서 같은 것들을 요구하는데 요즘에는 대부분 종이를 다루지 않으니, 이걸 어떻게 해야하나 하고 여러 가지 문서를 시도해보았습니다 관리비 명세서, 은행통장사본... 근데 다 안되더라구요 결국에 신분증(운전면허증)을 올렸더니 인증이 완료되었습니다 https://support.google.com/googleplay/android-developer/answer/15633622 Google Play Developer Verification: Required documents by country and region - South Korea - Play Console ..

https://hasura.io/ Universal data access layer for next-gen apps and AIThe fastest and simplest way to build, run, govern, and evolve a high-quality API layer on all your data.hasura.io hasura는 내가 가지고 있는 데이터에 대한 API 레이어를 만들어주는 역할을 합니다 좀더 쉽게 설명하자면 여러분이 postgres 데이터베이스와 그 안에 데이터를 가지고 있다고 할때 데이터베이스에 담긴 데이터를 조회, 추가, 삭제하는 graphQL API를 자동으로 생성합니다 여러분이 특정 데이터베이스에 기반하여 단순한 CRUD가 필요하다면 코드단의 작업 필요 없이 h..
https://hub.docker.com/_/postgres postgres - Official Image | Docker HubNote: the description for this image is longer than the Hub length limit of 25000, so has been trimmed. The full description can be found at https://github.com/docker-library/docs/tree/master/postgres/README.md. See also docker/hub-feedback#238 and dhub.docker.com postgres를 도커를 이용하여 사용하는데 있어서 필요한 유용한 내용들을 정리해보았습니다 $ docke..
npm의 workspace처럼 pnpm에서도 workspace를 지원하여 모노레포를 구성할수 있습니다 pnpm-workspace.yaml 파일을 생성하여 다음 코드를 작성하는것으로 워크스페이스를 사용할수 있습니다packages: # specify a package in a direct subdir of the root - 'my-app' # all packages in direct subdirs of packages/ - 'packages/*' # all packages in subdirs of components/ - 'components/**' # exclude packages that are inside test directories - '!**/test/**' 여기서 언급된 패키지들..
거의 대부분의 프로젝트를 pnpm으로 이사하는 중입니다 pnpm으로 이사하기 어렵지 않습니다 package.json에 다음과 같이 작성합니다 "scripts": { "preinstall": "npx only-allow pnpm", ...} 실수로 pnpm이 아닌 다른 종류의 패키지매니저를 사용하여 의존성 설치를 할 수 없도록 합니다 pnpm import yarn.lock 또는 package-lock.json 을 통해 pnpm-lock.yaml을 생성합니다 pnpm-lock.yaml 파일이 생성되었다면 이제 yarn.lock이나 package-lock.json은 필요가 없어졌습니다 과감하게 지웁니다 pnpm i 패키지를 설치합니다 pnpm import, install 과정에서 의미있는 정..

여행용 맥세이프 보조배터리를 구입했습니다 Essager 제품의 보조배터리입니다 Essager에서 usb케이블, 보조배터리, 충전기, usb허브 등등 다양한 전자제품이 나옵니다 그래도 중국산 브랜드 중에서는 믿을만한 브랜드라고 생각합니다 알리에서 약 $12 정도를 주고 구입했습니다 요즘 환율이 올라서 18000원쯤 하겠네요 왼쪽이 샤오미 P05ZM 모델의 맥세이프 보조배터리고 우측이 essager의 보조배터리 입니다 샤오미 제품은 3~4만원 정도 하는데 essager 제품이 절반가격입니다 두개 모두 20W 무선충전, 5000mAh 스펙을 가지고 있습니다 essager가 좀더 얇고 작습니다 뒷면은 이렇습니다 1~2년 전에 샤오미 보조배터리를 구입해서 썼는데 여행용으로 굉장히 만족스..
https://typeorm.io/migrations typeorm도 migration 기능을 제공해주고 있습니다 migration을 통하여 DB 스키마의 변경내역도 코드를 이용하여 관리할 수 있으며, CI/CD 등에서 자동화된 migration 프로세스를 도입할 수 있습니다 typeorm migration:run -- -d path-to-datasource-config migration:run 명령어를 통해 migration 을 실행시킬수 있습니다 import { MigrationInterface, QueryRunner } from "typeorm"export class PostRefactoringTIMESTAMP implements MigrationInterface { async up(que..
- Total
- Today
- Yesterday
- iPhone
- 아이디어
- 게임
- 네이버
- 대학생
- 경진대회
- 벤처
- php
- 자바스크립트
- 앱
- 트위터
- AWS
- CSS
- 소프트웨어
- 웹표준
- 애플
- 구글
- 모바일
- 창업
- 어플리케이션
- JavaScript
- Apple
- 스마트폰
- android
- 안드로이드
- 공모전
- 아이폰
- 앱스토어
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |