react-native的WebView使用
来源:互联网 发布:计算机算法设计 网课 编辑:程序博客网 时间:2024/06/05 18:25
react-native的WebView使用
属性介绍
domStorageEnabled bool 是否储存dom元素
injectJavaScript?: function 在网页加载完成之后,还可以主动调用此方法(以ref形式调用)继续给WebView注入JS代码。注入后会立即执行。
injectedJavaScript string 设置在网页加载之前注入的一段JS代码。
mediaPlaybackRequiresUserAction bool 设置页面中的HTML5音视频是否需要在用户点击后再开始播放。默认值为true.
onError function 加载失败时调用。
onLoad function 加载成功时调用。
onLoadEnd function 加载结束时(无论成功或失败)调用。
onLoadStart function 加载开始时调用。
onMessage function 在webview内部的网页中调用window.postMessage方法时可以触发此属性对应的函数,从而实现网页和RN之间的数据交换。 设置此属性的同时会在webview中注入一个postMessage的全局函数并覆盖可能已经存在的同名实现。
网页端的window.postMessage只发送一个参数data,此参数封装在RN端的event对象中,即event.nativeEvent.data。data 只能是一个字符串。
javaScriptEnabled bool 仅限Android平台。iOS平台JavaScript是默认开启的。
onNavigationStateChange function
renderError function 设置一个函数,返回一个视图用于显示错误。
renderLoading function 设置一个函数,返回一个加载指示器。
source {uri: string, method: string, headers: object, body: string}, {html: string, baseUrl: string}, number 在WebView中载入一段静态的html代码或是一个url(还可以附带一些header选项)。
scalesPageToFit bool 设置是否要把网页缩放到适应视图的大小,以及是否允许用户改变缩放比例。
startInLoadingState bool 强制WebView在第一次加载时先显示loading视图。默认为true。
mixedContentMode?: enum(‘never’, ‘always’, ‘compatibility’)
指定混合内容模式。即WebView是否应该允许安全链接(https)页面中加载非安全链接(http)的内容。
可选的mixedContentMode值如下:
‘never’ (默认) - WebView不允许安全链接页面中加载非安全链接的内容。
‘always’ - WebView允许安全链接页面中加载非安全链接的内容。
‘compatibility’ - WebView会尽量和浏览器当前对待此情况的行为一致。
saveFormDataDisabled?: bool 用于控制页面上的表单是否启用自动保存/自动补全功能。仅Android有效。
userAgent string 为WebView设置user-agent字符串标识。这一字符串也可以在原生端用WebViewConfig来设置,但js端的设置会覆盖原生端的设置。
<WebView ref={WEBVIEW_REF} automaticallyAdjustContentInsets={false} style={styles.webView} source={{uri: this.state.url}} javaScriptEnabled={true} domStorageEnabled={true} decelerationRate="normal" onNavigationStateChange={this.onNavigationStateChange} onShouldStartLoadWithRequest={this.onShouldStartLoadWithRequest} startInLoadingState={true} scalesPageToFit={this.state.scalesPageToFit} /> onNavigationStateChange = (navState) => { this.setState({ backButtonEnabled: navState.canGoBack, forwardButtonEnabled: navState.canGoForward, url: navState.url, status: navState.title, loading: navState.loading, scalesPageToFit: true }); }; onShouldStartLoadWithRequest = (event) => { // Implement any custom loading logic here, don't forget to return! return true; };
- 【React native】Webview的使用
- React native Webview的使用
- react-native的WebView使用
- React Native Webview使用
- React-native 之WebView的使用
- React-Native WebView控件使用
- react-native-webview-bridge使用问题
- 关于 React Native 与 WebView 的通信
- React Native与WebView的交互
- react native学习笔记14——WebView的使用及与html通信
- 【React Native开发】- React Navigation的使用
- 【React Native开发】React Native控件之WebView组件详解以及实例使用(22)
- [React Native]StatusBar的使用
- react native ref的使用
- react-native的简单使用
- react native Linking的使用
- react native navigator 的使用
- React Native FlatList的使用
- osx多用户设置共享文件夹(MacBook)
- mybatis学习笔记
- 网上资料汇总。。。
- 3.偏头痛杨的常见设计模式入门系列之工厂模式篇(简单+方法+抽象)
- BZOJ1858股票交易 单调队列优化DP
- react-native的WebView使用
- 广州富敦举办下午茶不仅是员工福利,更是情怀
- 最近项目中给图片添加水印老失败,报错信息如下
- DDR3 寻址及原理
- 第九周java作业
- BZOJ 4985: 评分 二分答案 dp判定
- 深入理解Java线程池
- 在windows上面搭建git远程仓库
- Java NIO系列教程(1): Java NIO 概述