ios h5+ events plusready回调经常不触发
[内容]
重现步骤
[步骤]
xcode启动模拟器,启动入口是网络地址,plusready事件经常不触发,要打断点才100%触发。
[结果]
plusready事件经常不触发
[期望]
plusready事件触发回调
[如果语言难以表述清晰,拍一个视频或截图,有图有真相]
IDE运行环境说明
[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明]
xcode11.x ,模拟器13.x,h5+sdk是11月最新的
[IDE版本号]
[windows版本号]
[mac版本号]
uni-app运行环境说明
[运行端是h5或app或某个小程序?]
[运行端版本号]
[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试]
[编译模式是老模板模式还是新的自定义组件模式?]
App运行环境说明
[Android版本号]
[iOS版本号]
[手机型号]
[模拟器型号]
附件
[IDE问题请提供HBuilderX运行日志。菜单帮助-查看运行日志,点右键打开文件所在目录,将log文件压缩成zip包上传]
[App问题请提供可重现问题的代码片段,你补充的细一点,问题就解决的快一点]
[App安装包或H5地址]
[可重现代码片段]
const Root = () => {
const [hasPlus, setPlus] = useState(false);
const handlePlusReady = useCallback(() => (() => {
// debugger;
window.plus.navigator.setStatusBarStyle('dark');
window.plus.screen.lockOrientation("portrait");
window.plus.nativeUI.toast('window.plus is ready');
window.plus.webview.currentWebview().setStyle({
softinputMode: "adjustResize" // 弹出软键盘时自动改变webview的高度
});
setPlus(true);
})(), []);
useEffect(() => {
// debugger;
document.addEventListener('plusready', handlePlusReady, false);
return () => document.removeEventListener('plusready', handlePlusReady, false);
}, [handlePlusReady]);
if(!hasPlus) return null;
setTimeout(() => {
window.plus.navigator.closeSplashscreen();
});
return (
<Router>
<RootStore>
<ThemeStore>
<App/>
</ThemeStore>
</RootStore>
</Router>
)
};
联系方式
[QQ]
0 个回复