提交 b82f78c6 编写于 作者: Q qiang

fix(h5): window ssr

上级 5afea33b
...@@ -10608,13 +10608,16 @@ function useAppClass(showTabBar) { ...@@ -10608,13 +10608,16 @@ function useAppClass(showTabBar) {
}); });
} }
function initMediaQuery(minWidth, callback) { function initMediaQuery(minWidth, callback) {
const mediaQueryList = window.matchMedia("(min-width: " + minWidth + "px)"); if (typeof window === "object" && window.matchMedia) {
if (mediaQueryList.addEventListener) { const mediaQueryList = window.matchMedia("(min-width: " + minWidth + "px)");
mediaQueryList.addEventListener("change", callback); if (mediaQueryList.addEventListener) {
} else { mediaQueryList.addEventListener("change", callback);
mediaQueryList.addListener(callback); } else {
mediaQueryList.addListener(callback);
}
return mediaQueryList.matches;
} }
return mediaQueryList.matches; return false;
} }
function useMaxWidth(layoutState, rootRef) { function useMaxWidth(layoutState, rootRef) {
const route = vueRouter.useRoute(); const route = vueRouter.useRoute();
...@@ -10646,7 +10649,6 @@ function useMaxWidth(layoutState, rootRef) { ...@@ -10646,7 +10649,6 @@ function useMaxWidth(layoutState, rootRef) {
} }
} }
vue.watch([() => route.path], checkMaxWidth); vue.watch([() => route.path], checkMaxWidth);
window.addEventListener("resize", checkMaxWidth);
} }
function useState() { function useState() {
const topWindowMediaQuery = vue.ref(false); const topWindowMediaQuery = vue.ref(false);
......
...@@ -18092,13 +18092,16 @@ function initCssVar() { ...@@ -18092,13 +18092,16 @@ function initCssVar() {
}); });
} }
function initMediaQuery(minWidth, callback) { function initMediaQuery(minWidth, callback) {
const mediaQueryList = window.matchMedia("(min-width: " + minWidth + "px)"); if (typeof window === "object" && window.matchMedia) {
if (mediaQueryList.addEventListener) { const mediaQueryList = window.matchMedia("(min-width: " + minWidth + "px)");
mediaQueryList.addEventListener("change", callback); if (mediaQueryList.addEventListener) {
} else { mediaQueryList.addEventListener("change", callback);
mediaQueryList.addListener(callback); } else {
mediaQueryList.addListener(callback);
}
return mediaQueryList.matches;
} }
return mediaQueryList.matches; return false;
} }
function useMaxWidth(layoutState, rootRef) { function useMaxWidth(layoutState, rootRef) {
const route = useRoute(); const route = useRoute();
...@@ -18130,8 +18133,10 @@ function useMaxWidth(layoutState, rootRef) { ...@@ -18130,8 +18133,10 @@ function useMaxWidth(layoutState, rootRef) {
} }
} }
watch([() => route.path], checkMaxWidth); watch([() => route.path], checkMaxWidth);
onMounted(checkMaxWidth); onMounted(() => {
window.addEventListener("resize", checkMaxWidth); checkMaxWidth();
window.addEventListener("resize", checkMaxWidth);
});
} }
function useState() { function useState() {
const topWindowMediaQuery = ref(false); const topWindowMediaQuery = ref(false);
......
...@@ -127,13 +127,16 @@ function initMediaQuery( ...@@ -127,13 +127,16 @@ function initMediaQuery(
minWidth: number, minWidth: number,
callback: (ev: MediaQueryListEvent) => void callback: (ev: MediaQueryListEvent) => void
) { ) {
const mediaQueryList = window.matchMedia('(min-width: ' + minWidth + 'px)') if (typeof window === 'object' && window.matchMedia) {
if (mediaQueryList.addEventListener) { const mediaQueryList = window.matchMedia('(min-width: ' + minWidth + 'px)')
mediaQueryList.addEventListener('change', callback) if (mediaQueryList.addEventListener) {
} else { mediaQueryList.addEventListener('change', callback)
mediaQueryList.addListener(callback) } else {
mediaQueryList.addListener(callback)
}
return mediaQueryList.matches
} }
return mediaQueryList.matches return false
} }
function useMaxWidth( function useMaxWidth(
...@@ -172,8 +175,10 @@ function useMaxWidth( ...@@ -172,8 +175,10 @@ function useMaxWidth(
} }
} }
watch([() => route.path], checkMaxWidth) watch([() => route.path], checkMaxWidth)
onMounted(checkMaxWidth) onMounted(() => {
window.addEventListener('resize', checkMaxWidth) checkMaxWidth()
window.addEventListener('resize', checkMaxWidth)
})
} }
function useState() { function useState() {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册