문제상황
타입을 도대체 모르겠었다.
let style: //type????
switch (tagType){
case('case'){
style = css`
${({theme}) => theme.....}
`
break;
}
}
이렇게하면 타입을 찾을 수 있다.
ReturnType<typeof css>;
왜 css 타입의 리턴 타입인가?
ReturnType<T>
함수 T의 반환 타입으로 구성된 타입을 만듭니다.
예시
type T1 = ReturnType<(s: string) => void>; // void
그렇다면 css가 함수라는 뜻이다.
템플릿 리터럴은 함수다....
일반적인 함수 호출형태가 아니라 transform`` 형태인...
출처: https://mygumi.tistory.com/395 [마이구미의 HelloWorld]
import * as React from 'react';
이유!
React가 export default가 아닌 namespace의 형태로 export되고 있습니다. 그렇기 때문에 import React from 'react' 형태로는 불러올 수가 없습니다. default export가 없으니 어떤 것을 기본으로 받아와야 하는 지 모르기 때문에 오류가 뜨는 것이죠. 그렇기 때문에 namespace 형태로부터 받아오기 위해 * as React라고 사용하는 것입니다.
출처: https://enfanthoon.tistory.com/168 [June Dev Blog]