uniapp跳轉webview后H5不執行UniAppJSBridgeReady 回調無用


開始時我在真機上測試使用

<web-view :src="'/hybrid/html/pages/index/index.html?userInfo='+JSON.stringify(userInfo)+'&type='+webViewType" @message="getMessage"></web-view>

這種形式傳參時沒有問題會走UniAppJSBridgeReady 回調但是,離線打包生成app資源在xcode上運行到手機出現不回調

因為官方的demo實例中沒有出現問題,因為里面沒有向webview傳參

后來發現是傳參問題,不能用下面形式

<web-view :src="'/hybrid/html/pages/index/index.html?userInfo='+JSON.stringify(userInfo)+'&type='+webViewType" @message="getMessage"></web-view>

我改后的
<template>
    <view>
        <!-- <web-view :src="'/hybrid/html/pages/index/index.html?userInfo='+JSON.stringify(userInfo)+'&type='+webViewType" @message="getMessage"></web-view> -->
        <web-view :src="url" @message="getMessage"></web-view>
    </view>
</template>

<script>
    //非父子組件傳值
    import bus from '../../static/js/bus.js';
    import { mapState, mapMutations } from 'vuex';
    export default {
        computed: mapState(['userInfo', 'api','webViewType']),
        data() {
            return {
                url:'',
                fileList:[]
            }
        },
        onLoad(option) {
            console.log(this.webViewType)
            this.url=`/hybrid/html/pages/index/index.html?type=${this.webViewType}&token=${this.userInfo.token}`
        },
        methods: {
            getMessage(event) {
                this.fileList=event.detail.data[0].fileList
                bus.$emit('fileList',this.fileList)
            }
        }
    }
</script>

<style>
</style>

就可以觸發了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM