Argument of type 'HTMLElement | null' is not assignable to parameter of type 'Element | DocumentFragment'.
Type 'null' is not assignable to type 'Element | DocumentFragment'.ts(2345)

 

원래 에러의 모든 메세지는 이런식이였다. 마이그레이션 하다보니 또 index.tsx 파일에서 root로 render해주는 함수에 이런 에러가 나왔다. 나랑 똑같은 에러를 받은 분을 쉽게 찾을 수 있었다. 

 

https://stackoverflow.com/questions/63520680/argument-of-type-htmlelement-null-is-not-assignable-to-parameter-of-type-el

 

Argument of type 'HTMLElement | null' is not assignable to parameter of type 'Element'. Type 'null' is not assignable to type 'E

I have index.html <body> <div id="portal"></div> <div id="root"></div> </body> and want to use the component below in separate porta...

stackoverflow.com

 

 

Other people have answered that you should add a null-check, but Typescript also has a non-null assertion that you can use when you are sure that the value is never null by adding the ! operator to the end of your statement:

 

다른 사람들의 언급한 것 처럼 null 체크를 해야하지만, 타입스크립트에서는 값이 반드시 있을거라는 확신이 있을때 ! 연사자를 상태 뒤에 붙여서 non-null assertion을 통해 사용할 수 있습니다. 

 

이런식으로 사용할 수 있을 것 같다.