Skip to content
0.2.0 문서입니다. 설치한 버전의 API와 변경 사항을 확인하세요.

Events ​

핸들러를 callback()으로 감쌉니다. 대부분 event.nativeEvent를 사용하지만 onNavigationStateChange는 상태를 직접 받습니다.

로드 수명 ​

결과순서
성공onLoadStart → onLoad → onLoadEnd
전송 실패onLoadStart → onError → onLoadEnd
Main frame HTTP 4xx/5xxonLoadStart → onHttpError → onLoadEnd. onLoad 없음.

onLoadProgress는 0~1 추정값입니다. 중간 값이 생략될 수 있고 1이 성공을 뜻하지 않습니다. 종료 로드 이벤트의 loading은 false입니다.

WebViewNavigationState는 url, title, loading, canGoBack, canGoForward를 담습니다. SPA 히스토리 변경도 상태에 반영합니다.

onShouldStartLoadWithRequest는 nativeEvent wrapper 없이 ShouldStartLoadRequest를 받습니다. 공개 반환 타입은 boolean | Promise<boolean>입니다. 탐색 제어를 참고하세요.

메시지와 새 창 ​

WebViewMessageEvent는 문자열 data, 최상위 url, 선택적인 네이티브 sourceOrigin·isMainFrame을 담습니다. 발신 정책을 확인하세요.

OpenWindowEvent.nativeEvent.url은 요청한 목적지입니다. 핸들러를 등록하면 기본 in-place 로드를 생략합니다. Boolean 반환값으로 결정하지 않습니다.

오류 domain ​

Domain·이벤트의미
NitroWebViewSource잘못된 source·헤더 조합. Code -1.
NitroWebViewConfiguration잘못되거나 지원하지 않는 설정·정책
NitroWebViewDownloadBlob 작업 실패. Code -1. 페이지 로드는 실패로 바꾸지 않음.
onError의 플랫폼 domain네이티브 탐색·전송 오류. Code와 description 확인.
onHttpErrorMain frame HTTP 상태. statusCode, url, description.

설정·source 오류는 로드 시작 전에 발생할 수 있습니다. 처리 전에 load-start를 기다리지 마세요. HTTP 오류 응답의 본문은 표시될 수 있습니다. 리다이렉트 중 HTTP 오류가 반복될 수 있으며 중복 제거하지 않습니다.

Renderer와 스크롤 ​

onRenderProcessGone.nativeEvent.didCrash는 Android API 26+에서만 제공합니다. iOS는 undefined입니다. 복구를 참고하세요.

onScroll은 throttling하지 않습니다. iOS는 모든 geometry 필드를 제공합니다. Android는 contentOffset, 0인 contentSize를 제공하며 iOS 전용 필드는 undefined입니다. 비용이 큰 JS 작업은 필요에 따라 제한하세요.

전체 payload 시그니처: Types.

MIT licensed · Built with Nitro Modules