国产一区二区精品-国产一区二区精品久-国产一区二区精品久久-国产一区二区精品久久91-免费毛片播放-免费毛片基地

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁  >  技術(shù)干貨  > RNWebview詳解

RNWebview詳解

來源:千鋒教育
發(fā)布人:xqq
時間: 2023-11-21 16:25:54 1700555154

Hello world

' }} source={{ uri: 'file:///sdcard/some-local-file.html' }} }

2、onLoad

在組件渲染時會觸發(fā)onLoad回調(diào)函數(shù),傳遞事件對象event、document.readyState、uri三個參數(shù)。該事件只觸發(fā)一次,當(dāng)所有的幀被加載完畢時,才會被觸發(fā)回調(diào)函數(shù),下面是一個例子:

{
    import React, { Component } from 'react';
    import { WebView } from 'react-native';

    export default class ExampleApp extends Component {
        onLoad(event) {
            console.log(event.nativeEvent)
        }

        render() {
            return (
              
            )
        }
    }
}

3、onMessage

在Webview中通過JavaScript的postMessage方法可以向RN發(fā)送消息。可以在組件中使用onMessage回調(diào)函數(shù)捕獲這些事件,并取得傳進(jìn)的數(shù)據(jù),下面是一個例子:

{
    import React, { Component } from 'react';
    import { WebView } from 'react-native';

    export default class ExampleApp extends Component {

        onMessage(event) {
            console.log(event.nativeEvent.data)
        }

        render() {
            return (
              
            )
        }
    }
}

四、常見方法

除了屬性參數(shù),WebView組件還支持一些方法,下面是一些常見的方法示例:

1、網(wǎng)頁加載方法

通過ref屬性獲取組件引用,然后調(diào)用navigate方法實(shí)現(xiàn)URL的跳轉(zhuǎn)。下面是一個例子:

{
    import React, { Component } from 'react';
    import { WebView } from 'react-native';

    export default class ExampleApp extends Component {
        webview = null;

        runScript(){
            if (this.webview){
              this.webview.injectJavaScript('alert("This is Alert show!");')
            }
        }

        render() {
            return (
              
                

2、網(wǎng)頁注入JS方法

通過ref屬性獲取組件引用,然后調(diào)用injectJavaScript方法可以注入JS腳本到網(wǎng)頁中。下面是一個例子:

{
    import React, { Component } from 'react';
    import { WebView } from 'react-native';

    export default class ExampleApp extends Component {
        webview = null;

        runScript(){
            if (this.webview){
              this.webview.injectJavaScript('alert("This is Alert show!");')
            }
        }

        render() {
            return (
              
                

3、網(wǎng)頁后退方法

通過ref屬性獲取組件引用,然后調(diào)用goBack方法實(shí)現(xiàn)網(wǎng)頁后退操作。下面是一個例子:

{
    import React, { Component } from 'react';
    import { WebView } from 'react-native';

    export default class ExampleApp extends Component {
        webview = null;

        goBack(){
            if (this.webview){
              this.webview.goBack()
            }
        }

        render() {
            return (
              
                

五、總結(jié)

本文從介紹,使用方法,常見屬性參數(shù),常見方法四個方面詳細(xì)闡述了RNWebview的使用,綜合各個方面的內(nèi)容,我們可以在React Native應(yīng)用中快速、輕松地展示各類web頁面內(nèi)容,大大提高了React Native開發(fā)效率。

tags: socketcan
聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請您保持通訊暢通,專屬學(xué)習(xí)老師24小時內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT