inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

타입스크립트 입문 - 기초부터 실전까지

자바스크립트에 타입이 있을 때의 첫 번째 장점

[참고] 섹션1-3 [자바스크립트에 타입이 있을 때의 첫 번째 장점] - why-ts undefined

해결된 질문

453

ACACIA

작성한 질문수 6

2

섹션1-3 강의명 [자바스크립트에 타입이 있을 때의 첫 번째 장점] 중 why-ts의 app.js에서 axios.get(url)의 response 를 User type으로 정의하였습니다. Promise<User>

이때, response가 아닌 response.data가 User type이므로 자동완성을 따라가면 undefined 문제가 발생합니다.

이미 많은 질문이 나왔고 답변으로도 말씀하셨듯 필요성을 인지하기엔 충분하므로 수강하시는 분들은 단순 참고 바랍니다.🙏

javascript typescript es6

답변 2

0

캡틴판교

안녕하세요, 네 다른 분들을 위해서 노트 남겨주셔서 감사합니다 :)

0

ACACIA

 


기존 강의자료

// user data

var user={};
...

/**
 * @typedef {object} User
 * @property {string} name 
 * @property {string} email
 * @property {Address} address
 */

/**
 * 
 * @returns {Promise<User>}
 */
function fetchUser() {
  return axios.get(url);
}

 


참고로 아래와 같이 추가 정의하더라도 상단에서 user을 정의하고 있었기 때문에 정상적인 추론이 되지 않습니다.

// user data
var user={};
...

/**
 * @typedef {object} UserData
 * @property {User} data 
 */

/**
 * 
 * @returns {Promise<UserData>}
 */
function fetchUser() {
  return axios.get(url);
}

 

```

---

아래와 같이 선언시 타입을 제공하여 해소 가능합니다.만. 그냥 ts 씁시다. 화이팅~

// var user = {} 삭제

function startApp() {
  fetchUser()
    .then(function (response) {
      var user = response.data;

 

 

TSLint

0

67

1

vscode eslint server 오류

0

82

1

안녕하세요. 기본타입- 튜플, 객체, 진위값 부분의 영상의 화면이 나오질 않습니다.

0

77

1

live server 설치 오류

1

374

2

강의 교안 pdf 는 따로 제공하지않나요?

0

287

2

npm i 설치 이유 문의

1

407

3

index.ts Delete &#x60;␍&#x60;eslintprettier/prettier 오류(빨간줄) 해결

2

289

3

vue 에서 jquery 사용 문제

1

697

2

TSLint 확장 프로그램은 현재 지원하지 않는다고 합니다.

1

501

2

강의 내용처럼 노란 밑줄이 작동하지 않아서 유사 질문들을 실행해보았는데요

1

544

1

section 3-1 JSdoc 타입이 추론되지 않아서 다음과 같이 수정했는데 이거 맞나요?

1

453

2

함수에 리턴 안됐다고 노란밑줄이 쳐져야하는데 없습니다

2

457

1

파일이 다른데 식별자가 중복되었다고 뜹니다.

1

445

2

빨간줄 에러 질문드립니다

1

489

2

마우스 갖다대면 리턴값 설명 나오는 거 질문드려요

1

358

2

js에서 @ts-check 적어도 체크하지 못하는 문제입니다

2

395

2

index.html에서 타입스크립트 콘솔 찍는 법 질문드립니다

1

567

2

섹션 1-3 추론 질문드립니다

1

356

2

왜 api쪽에는 왜 에러가 안나는지 궁금합니다.

1

325

2

const item1을 선언했을 때 타입을 선언해줘도 괜찮을까요?

1

391

1

전화번호부 타입선언

1

267

2

타입을 전역으로 분리

1

594

2

객체 선언 시 구분자는 쉼표, 세미콜론 모두 사용가능한건가요?

1

460

1

Git 관련 질문이 있습니다

1

672

2