inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[리뉴얼] 타입스크립트 올인원 : Part2. 실전 분석편

네임스페이스(namespace)

declare namespace vs namespace

494

작성자 없음

작성한 질문수 0

0

declare namespace JQuery {
...

namespace Ajax {

...

}

}

두가지 궁금한 부분이 있습니다.

  1. declare namespace를 쓰면 내부의 멤버들을 직접 export 하지 않아도 자동으로 모두 내보내지고 namespace만 쓸 경우엔 멤버들을 외부에 공개할려면 직접 export 해야하는걸로 아는데 이렇게 알고 있어도 될까요?

  2. 위 코드도 JQuery가 declare로 선언되었으니 외부에서 Ajax 네임스페이스에 접근가능하니 declare를 선언하지 않은걸로 봐도 될까요? 아니면 다른 이유가 더 있는걸까요?

typescript

답변 2

0

하정훈

JQuery는 파일 외부에 선언이 따로 되어있다는 말씀이

@types/jquery에서 타입선언 말고 실제 jquery 라이브러리 안에서

var JQuery = { ... }; 식으로 구현된 걸 말씀하시는걸까요?

0

제로초(조현영)

네 맞습니다. declare는 js 파일에 구현부가 있다는 의미입니다.

0

제로초(조현영)

  1. 네 맞습니다. 다만 export를 생략하고싶냐 여부가 declare namespace와 namespace를 선택하는 결정적인 요인은 아닙니다. declare namespace는 앰비언트 선언으로 다른 js 파일에 실제 구현부가 있을 때 사용합니다.

  2. namespace Ajax는 그 파일 안에서 Ajax 네임스페이스의 구현부까지 구현을 한 것이고, declare namespace JQuery는 그 파일 외부에 JQuery 선언이 따로 되어 있을 것입니다.

타입 오버라이딩

0

77

2

React19에서 useRef 타입 정의의 변화

0

118

2

jQuery를 $로 한 번 더 감싼 형태

0

54

1

typescript interface를 jsdoc으로 주석달 때

0

229

2

declare module시 import 위치

0

195

2

declare global 로 선언된 타입을 확장하는게 아닌 좁히는것도 가능할가요?

0

145

2

typescript 강의를 보고 개발을 하다가 강의와 다른 내용인데 물어볼곳이 여기밖에 없어서 질문 드립니다.

0

234

1

강의에 필요한 사전준비와 예제 코드 첨부

1

308

1

local.ts 예제코드 첨부 합니다.

1

227

1

redux 예제코드 가져와서 강의 보면서 따라하는데

1

242

1

react 함수 컴포넌트 타이핑은 있는데 클래스 컴포넌트 타이핑 예제 코드가 없네요.

1

285

1

axios 1.6.0 버전으로 보고 있는데영

4

391

1

Module '"axios"' has no default export 에러 나시는분들

0

879

1

안녕하세요, 제로초님 타입스크립트 axios 분석 강의보고 궁금한점이 있어서 질문드립니다

1

386

1

안녕하세요. 제로초님 당신의 강의 매니아 입니다. typescript 모듈 관련 질문이 있어서요.

0

268

1

axios catch 에서 error 타입에 대해 as 없이 이렇게 사용하면 어떨까요?

0

405

1

global 선언 시 export {}

0

296

1

initialState가 제네릭 S인 이유가 잘 이해가 되지 않습니다.

0

308

1

declare module vs declare namespace

0

473

1

"axios": "1.4.0" 버전 axios type 코드가 강의와 다릅니다!

0

555

1

Redux type 설정 과정에서 발생한 오류 질문 (ts[2345])

1

376

2

index.d.ts 에서 global declare 선언을 했을 때와 하지 않았을 때의 차이

0

403

1

미들웨어가 커링패턴으로 이루어진 이유

0

435

1

axios 파트 첫번째 강의 질문입니다

0

531

1