vue2监听页面显示隐藏
created() {
document.addEventListener('visibilitychange', function(e) {
console.log('页面变化', e.target.visibilityState)
switch (e.target.visibilityState) {
case 'visible':
console.log('是否验证过',this.isVerify)
if(this.isVerify){
this.getReward('CASH_RED_ENVELOPE');
}
break
case 'hidden':
break
}
})
},
vue3监听页面显示隐藏
// vue3监听页面显示隐藏 在工具类中创建方法
export const onPageShow = (callback) => {
document.addEventListener("visibilitychange", () => {
if (document.visibilityState === "visible") {
console.log("监听页面显示");
callback();
}
if (document.visibilityState === "hidden") {
console.log("监听页面隐藏");
const removeBtn = document.createElement("button");
removeBtn.onclick = () => {
window.removeEventListener("visibilitychange");
};
}
});
};
// 在需要监听的页面引入
import { onPageShow } from "@/utils/index";
// 在onMounted同级别调用
onPageShow(async () => {
console.log('是否验证过',isVerify.value);
if(isVerify.value){
luckyDrawData();
}
});