webview嵌入umi开发的h5白屏

最近公司搞一个h5项目、又一个扫码的功能、要调用终端设备,因为对方的开发人员没在这边、所以让我来写一个rn的套壳app、跑一边流程;结果打包完、给我静态资源后、发现白屏;

因为此项目也要能离线访问、所以需要将静态资源直接嵌入到webview中、所以h5打包完之后,直接嵌入webview;

一开始白屏、我以为是rn这边的webview有问题、做了一下工作排查;

1、自己写了测试的html嵌入进去没问题、
2、写了node本地服务、把文件托管到静态服务上、嵌入对应地址,没问题;

我想可能是h5有问题、于是我嵌入本地开发地址、发现是可以的;

然后我又打开打包后dist下的index.html 发现本地浏览器打开也是白屏;报如下错误

在这里插入图片描述
原来打出来的包、路由使用了history模式、恍然大悟;

如果是history模式,比如进入项目要redirect到/login下、那么会把/login当作get请求去获取对应资源地址、如果在服务器、那么返回index.html 做渲染、在本地是没法请求的;所以这种模式也是错误的;

于是让他们改成hash模式、发现打开后有资源引用不正确、这里我们在往app嵌的时候,需要将打包后的资源引用路径做一修改、在配置文件中将publicPath改为’./’;
打完包嵌入apk ok

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值