详细问题描述
(DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题)
[内容]
重现步骤
[步骤]
uniapp 中使用webview加载页面附加header,组件webview未找到方式附加header选择使用plus附加header
[结果]
ios 加载webview时直接闪退,Android能打开加载页面
[期望]
ios能正常加载webview页面并附加自定义header实现单点登录第三方合作方
[运行端版本号]
HBuilderX创建
[可重现代码片段]
let t = this;
var wv = plus.webview.create(t.viewurl, "custom-webview", {
additionalHttpHeaders: {
header: {
'xxxxxx': 'xxxxxx' + token //自定义请求头信息
},
}, //JSON类型,窗口加载页面时额外添加的HTTP请求头数据,内容按照http协议写.
autoBackButton: true,
videoFullscreen: 'auto', //String类型,视频全屏播放时的显示方向.auto:自动适配,如果当前页面竖屏,则竖屏显示.如果当前页面横盘显示,则横屏.如果当前页面自动感应,则自动感应横竖屏切换.portrait-primary:竖屏正方向.portrait-secondary:竖屏反方向,屏幕正方向按顺时针旋转180°.landscape-primary:横屏正方向,屏幕正方向按顺时针旋转90°.landscape-secondary:横屏方向,屏幕正方向按顺时针旋转270°.landscape:横屏正方向或反方向,根据设备重力感应器自动调整.默认:auto.iOS不支持.
scalable: true,
plusrequire: "none", //禁止远程网页使用plus的API,有些使用mui制作的网页可能会监听plus.key,造成关闭页面混乱,可以通过这种方式禁止
'uni-app': 'none', //不加载uni-app渲染层框架,避免样式冲突
top: uni.getSystemInfoSync().statusBarHeight + 44 //放置在titleNView下方。如果还想在webview上方加个地址栏的什么的,可以继续降低TOP值
})
// wv.loadURL(t.loginurl);
// wv.loadURL(t.viewurl);
var currentWebview = this.$mp.page.$getAppWebview() //获取当前页面的webview对象
setTimeout(function() {
currentWebview.append(wv); //一定要append到当前的页面里!!!才能跟随当前页面一起做动画,一起关闭
uni.hideLoading();
}, 1000); //如果是首页的onload调用时需要延时一下,二级页面无需延时,可直接获取
联系方式
[QQ] 184692551
0 个回复