일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 해시테이블
- 프로그래머스
- 이진탐색
- 배열
- 웹팩
- 스택
- Machine Learning
- 연결리스트
- 알고리즘
- 큐
- RxJS
- 포인터
- 코딩테스트
- alexnet
- 자료구조
- 브라우저
- 연결 리스트
- cors
- 타입스크립트
- vue3
- RT scheduling
- APOLLO
- GraphQL
- 컨테이너
- C
- pytorch
- 자바스크립트
- 프로세스
- 릿코드
- 프론트엔드
- Today
- Total
목록타입스크립트 (3)
프린세스 다이어리
문제상황 fetch 받아온 배열을 reduce 돌고 싶은데, reduce에 밑줄이 생기며 에러가 뜬다. reduce 뿐만 아니라 this.charData[0]와 같이 인덱스에 접근하는 곳에도 모두 타입에러가 떴다. 아마 map을 돌았어도 에러가 떴을 것이다. computed: { isChartDataEmpty(): boolean { return ( this.chartData.reduce((acc: number, cur: any) => acc + cur.y, 0) === 0 ); }, }, Property 'reduce' does not exist on type '(state: DashboardStateI) => ChartDataI[] | undefined'. 해결방안 chartData가 undefined..
문제상황 특정 시점에서 차트를 새로 그려주기 위해 methods에 다음과 같은 함수를 만들었다. refreshData(newData: dashboardData) { this.chart.series[0].setData(newData); }, 그런데 다음과 같은 타입에러가 떴다. 해결방법 기존에는 setUp에서 chart를 null로 초기화하고 타입을 지정하지 않았는데, 타입을 먼저 unknown으로 하고 내가 쓰고 있는 하이차트의 Chart 타입을 가져와 지정해 주었다. 수정 전 setup() { const chart = ref(null); ... return { chart, ... }; }, 수정 후 setup() { const chart = ref(null) as unknown as Chart; .....
컴파일러가 무엇인지와 역할을 정리했고, 바벨을 사용하여 컴파일을 할 때와 타입스크립트 컴파일러로 컴파일할 때의 특징을 비교해보았다. 1. 컴파일러란 1-1. 컴파일러 특정 프로그래밍 언어를 다른 프로그래밍 언어로 옮기는 프로그램 1-2. 타입스크립트 컴파일러의 역할 2가지 1. 최신 타입스크립트/js 를 브라우저에서 동작할 수 있도록 구버전의 js로 *트랜스파일함. 2. 타입 체킹. - 타입체킹과 컴파일은 독립적으로 동작하기 때문에, 타입 에러가 있는 코드도 컴파일이 가능함. 타입에러 났을 때 컴파일하지 않으려면 tsconfig.json에서 noEmitOnError를 설정하면 됨. - 독립적이라 선언된 타입과 런타임 타입이 다를 수도 있음. 이런 상황을 최대한 피해야 함. * TypeScript 컴파일러..