@slan-health/taro-vueuse
Version:
taro vue版本hooks
31 lines (30 loc) • 791 B
JavaScript
import { ref, onMounted, onUnmounted } from "vue";
import { getEnv, ENV_TYPE, useDidShow, useDidHide } from "@tarojs/taro";
function useVisible() {
const visible = ref(true);
const env = getEnv();
const listenVisible = () => {
const visibleState = document.visibilityState;
visible.value = visibleState === "visible";
};
if (env == ENV_TYPE.WEB) {
onMounted(() => {
document.addEventListener("visibilitychange", listenVisible);
});
onUnmounted(() => {
document.removeEventListener("visibilitychange", listenVisible);
});
} else {
useDidShow(() => {
visible.value = true;
});
useDidHide(() => {
visible.value = false;
});
}
return visible;
}
export {
useVisible as default
};
//# sourceMappingURL=index.js.map