강의

멘토링

로드맵

Inflearn コミュニティ Q&A

dinp のプロフィール画像
dinp

投稿した質問数

本番リアクトプログラミング

SPA 初期ロード処理

Uncaught TypeError: Failed to execute 'removeChild' on 'Node': parameter 1 is not of type 'Node'

作成

·

1.1K

1

Uncaught TypeError: Failed to execute 'removeChild' on 'Node': parameter 1 is not of type 'Node'

자꾸 오류가 나오는데 어떻게 해야할까요 구글링을 해봐도 고칠 수가 없네요

reduxreact

回答 2

0

landvibe님의 프로필 이미지
landvibe
インストラクター

저는 재현이 안되네요
참고로 저는 Mac 크롬(v104.0.5112.101) 입니다
코드 공유해주시면 저도 실행해볼게요

landvibe님의 프로필 이미지
landvibe
インストラクター

확인해보니 React.StrictMode 가 켜져있어서 문제가 되고있네요
StrictMode 때문에 코드가 두 번 실행되고, 첫 번째 실행에서 삭제됐는데 두 번째 실행에서 또 삭제하려다가 에러가 나는 상황입니다
React.StrictMode를 켠 상태에서는 코드를 아래처럼 변경하시면 될거에요

const bodyEl = document.getElementsByTagName("body")[0];
const loadingEl = document.getElementById("init-loading");
if (loadingEl) {
bodyEl.removeChild(loadingEl);
console.log(bodyEl, loadingEl);
}

Din p님의 프로필 이미지
Din p
質問者

오 그렇군요 감사합니다!

0

landvibe님의 프로필 이미지
landvibe
インストラクター

안녕하세요
아래 코드를 넣었을 때 어떻게 출력되나요?
console.log(bodyEl, loadingEl);

참고로 저는 아래처럼 출력됩니다
<body>...</body> <div id="init-loading">...</div>

Din p님의 프로필 이미지
Din p
質問者

저도 똑같이 출력됩니다

dinp のプロフィール画像
dinp

投稿した質問数

質問する