ios中plusready回调经常不触发
import React, {useState, useCallback, useEffect} from 'react';
import {HashRouter as Router} from 'react-router-dom';
// import {H5PlusStore} from 'stores/h5plus';
import {RootStore} from 'stores/root';
import ThemeStore from 'stores/theme';
import App from './App';
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>
)
};
export default Root;
2 个回复
DCloud_App_Array
这种情况程序是被杀死了,而不是切换到后台在切换回来,所以不会受到resume事件。
但是plusready事件应该是可以收到的,重启应用后新开Webview窗口一定会收到plusready事件,如果没有收到此事件,请把代码贴出来,看看是不是代码写的不对。
1***@163.com - 00后菜鸡
ios中plusready回调经常不触发