WebView 구성 요소 내에서 함수를 생성하고 React Native 기능을 사용할 수 있습니까?React Native - Webview 호출 Reative 네이티브 기능
답변
가능 합니다만 이것이 유일한 방법인지는 확실하지 않습니다.
기본적으로 onNavigationStateChange
이벤트 핸들러를 설정하고 탐색 URL에 함수 호출 정보를 포함 할 수 있습니다. 여기에 개념 예가 나와 있습니다.
에서이
render() {
return <WebView onNavigationStateChange={this._onURLChanged.bind(this)} />
}
_onURLChanged(e) {
// allow normal the natvigation
if(!e.url.startsWith('native://'))
return true
var payload = JSON.parse(e.url.replace('native://', ''))
switch(e.functionName) {
case 'toast' :
native_toast(e.data)
break
case 'camera' :
native_take_picture(e.data)
break
}
// return false to prevent webview navitate to the location of e.url
return false
}
그냥 웹보기의 탐색 이벤트를 트리거 이것을 사용, 네이티브 메소드를 호출하려면 기본 컨텍스트를 반응 URL의 함수 호출 정보를 포함.
window.location = 'native://' + JSON.stringify({
functionName : 'toast', data : 'show toast text'
})
이 예는 가능, 그 react-native-webview-bridge에 대한 패키지를 existe. 나는 그것을 생산에 많이 사용했고 완벽하게 작동합니다.
는Hi Sidali Hallak, 네이티브 버전 u를 사용하고 있습니까? 왜냐하면 0.30을 사용하고 있기 때문입니다. 이 문제의 원인은 https://github.com/alinz/react-native-webview-bridge/issues/137 – ChokYeeFan
입니다. 저는 0.25 개월 전, 두 달 전에 프로젝트를 마쳤습니다. –
당신은 부하에 웹뷰에 자바 스크립트 함수를 삽입 할 수 있으며, 다음 IN Here
나는 확실하지 않다 더 많은 정보를 주입 된 함수로부터 응답을 얻을 수의 onMessage를 사용하지만, 내 생각은 - 당신이 할 수있는
아니. Webview는 Webview 구성 요소에서 정의 할 수있는 js 부분 만로드 할 수 있습니다. 이것은 다른 구성 요소와 완전히 별개이며 단지 볼 수있는 영역입니다.
- 1. React Native Android Webview Video
- 2. React Native + Redux React 네이티브 + Redux
- 3. React-Native-Meteor 업데이트 React-Native 0.33
- 4. React Native - 기기에 Webview 파일이로드되지 않았습니다.
- 5. React Native : WebView 높이가 제대로 설정되지 않았습니다.
- 6. React-Native 네이티브 모듈 'canOverrideAnExistingModule() Error'
- 7. 안드로이드에 대한 키보드 숨김 React 네이티브 webview
- 8. 네이티브 WebView 오류 "_onLoadingStart"
- 9. "FBSDKPackage"가 Android에서 Reative Native Facebook SDK로 정의되지 않았습니다.
- 10. React Native, Android Log.
- 11. React와 React-Native 결합하기
- 12. React + React 네이티브 스타터 키트
- 13. React 네이티브 라우터 Flux (react-native-router-flux) - 감속기에서 호출 동작
- 14. React-Native, comboBox like
- 15. React Native - "componentWillUnmount"가 호출 될 때?
- 16. React/React Native 글로벌 범위
- 17. Amazon Native with React Native 사용
- 18. React-native 1D barcode generator
- 19. react-native 노드 버전 문제
- 20. React^0.14.8 & React-native^0.24.1에서 React 15.0.2로 React-native 0.26.3으로 업그레이드하는 방법
- 21. React Native text 입력 마스크
- 22. React-Native : Webview Javascript-Injection이 예상대로 작동하지 않습니다.
- 23. React 네이티브 (포트 80)
- 24. React 네이티브 커스텀 이벤트
- 25. React Native, AwesomeProject, 반응 네이티브 run-ios : ** BUILD FAILED **
- 26. React-Native 용 네이티브 모듈을 빠르게 개발하는 방법은 무엇입니까?
- 27. react-native-router-flux에서 react-native-side-menu를 사용하는 방법?
- 28. React-Native RTC보기 오버랩
- 29. React-Native Android Spinner
- 30. React Native - iOS Collection보기
정확히 달성하기를 원하십니까? React native는 네이티브 android 또는 ios API를 사용하여 React 네이티브로 응용 프로그램 빌드에 힘을 실어주는 강력한 기능입니다. WebView를 사용하지 않고도 다른 좋은 방법이있을 수 있습니다. –
귀하의 요구 사항에 대해 더 구체적으로 말씀해주십시오. –