2***@qq.com
2***@qq.com
  • 发布:2024-12-30 15:28
  • 更新:2025-01-01 21:30
  • 阅读:35

【报Bug】webview中无法解析该路径/hybrid/html/index.html#/game/entry/

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 14.6.1 (23G93)

HBuilderX类型: 正式

HBuilderX版本号: 4.29

手机系统: iOS

手机系统版本号: iOS 18

手机厂商: 苹果

手机机型: iPhone 15

页面类型: nvue

vue版本: vue3

打包方式: 离线

项目创建方式: HBuilderX

示例代码:
<template> <web-view class="webview" ref="webview" fullscreen src="webviewSrc" />
</template>

<script>
import * as storage from '@/utils/storage.js'
import config from '@/utils/config.js'

export default {
data() {
return {
webviewSrc: ${config.gameHtmlRoot}/game/entry/?token=${storage.getToken() || ''}
}
},
}
</script>

<style>
.webview {
flex: 1;
}
</style>

操作步骤:

按如上代码编写

预期结果:

期望能正常访问

实际结果:

无法打开页面

bug描述:

将html放在hybrid/html目录下无法解析vue3 路由hash模式路径

2024-12-30 15:28 负责人:无 分享
已邀请:
DCloud_UNI_OttoJi

DCloud_UNI_OttoJi - 日常回复 uni-app/x 问题,如果艾特我没看到,请主动私信

开发阶段是否正常,提供一个线上的网址我测试,并提供 vue 和 HBuilderX 依赖版本

BoredApe

BoredApe - 有问题就会有答案。

直接使用file://引入本地页面会出现跨域问题,需要在应用内开一个服务。可以参考一下《网赚游戏》中首页使用web-view的方式来解决跨域问题。

<web-view v-if="platform=='android'" :src="'/hybrid/html/plugins/h5/index.html'" class="webview" ref="iframe"></web-view>    
<web-view v-if="platform=='ios'" :src="'http://localhost:13131/_www/hybrid/html/plugins/h5/index.html'" class="webview" ></web-view>

iOSmanifest.json中开启miniserve,安卓不需要特殊配置

"capabilities" : {    
    "plists" : {    
        "DCloudConfig" : {    
            "miniServer" : true    
        }    
    }    
}

试试这种方式能否解决问题。

要回复问题请先登录注册