This commit is contained in:
telangpu
2026-04-29 21:51:30 +08:00
parent c73ff3b77a
commit 7107a95c10
178 changed files with 227 additions and 158 deletions

View File

@@ -5,7 +5,7 @@ VITE_PORT = 8848
VITE_PUBLIC_PATH = ./
# 网站前缀
VITE_BASE_URL = "dsf.dagf7.top"
VITE_BASE_URL = "up.xx.sczqb6.top"
# 开发环境路由历史模式Hash模式传"hash"、HTML5模式传"h5"、Hash模式带base参数传"hash,base参数"、HTML5模式带base参数传"h5,base参数"
VITE_ROUTER_HISTORY = "hash"

View File

@@ -914,8 +914,7 @@
"resolved": "https://registry.npmmirror.com/@types/chai/-/chai-4.3.20.tgz",
"integrity": "sha512-/pC9HAB5I/xMlc5FP77qjCnI16ChlJfW0tGa0IUcFn38VJrTV6DeZ60NU5KZBtaOZqjdpwTWohz5HU1RrhiYxQ==",
"dev": true,
"license": "MIT",
"peer": true
"license": "MIT"
},
"node_modules/@types/chai-subset": {
"version": "1.3.6",
@@ -1053,7 +1052,6 @@
"integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==",
"dev": true,
"license": "BSD-2-Clause",
"peer": true,
"dependencies": {
"@typescript-eslint/scope-manager": "5.62.0",
"@typescript-eslint/types": "5.62.0",
@@ -1522,7 +1520,6 @@
"integrity": "sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==",
"dev": true,
"license": "MIT",
"peer": true,
"bin": {
"acorn": "bin/acorn"
},
@@ -2969,7 +2966,6 @@
"integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"ansi-colors": "^4.1.1",
"strip-ansi": "^6.0.1"
@@ -3219,7 +3215,6 @@
"deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.6.1",
@@ -3324,7 +3319,6 @@
"integrity": "sha512-174lJKuNsuDIlLpjeXc5E2Tss8P44uIimAfGD0b90k0NoirJqpG7stLuU9Vp/9ioTOrQdWVREc4mRd1BD+CvGw==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.4.0",
"globals": "^13.24.0",
@@ -5120,7 +5114,6 @@
"integrity": "sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"abab": "^2.0.6",
"acorn": "^8.8.1",
@@ -6419,7 +6412,6 @@
"integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
"dev": true,
"license": "MIT",
"peer": true,
"bin": {
"prettier": "bin-prettier.js"
},
@@ -8019,7 +8011,6 @@
"integrity": "sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==",
"devOptional": true,
"license": "Apache-2.0",
"peer": true,
"bin": {
"tsc": "bin/tsc",
"tsserver": "bin/tsserver"
@@ -8147,7 +8138,6 @@
"integrity": "sha512-qK9W4xjgD3gXbC0NmdNFFnVFLMWSNiR3swj957yutwzzN16xF/E7nmtAyp1rT9hviDroQANjE4HK3H4WqWdFtw==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
"esbuild": "^0.18.10",
"postcss": "^8.4.27",
@@ -8259,7 +8249,6 @@
"resolved": "https://registry.npmmirror.com/vue/-/vue-3.5.13.tgz",
"integrity": "sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==",
"license": "MIT",
"peer": true,
"dependencies": {
"@vue/compiler-dom": "3.5.13",
"@vue/compiler-sfc": "3.5.13",

View File

Before

Width:  |  Height:  |  Size: 141 KiB

After

Width:  |  Height:  |  Size: 141 KiB

View File

Before

Width:  |  Height:  |  Size: 295 KiB

After

Width:  |  Height:  |  Size: 295 KiB

View File

Before

Width:  |  Height:  |  Size: 759 B

After

Width:  |  Height:  |  Size: 759 B

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

Before

Width:  |  Height:  |  Size: 747 B

After

Width:  |  Height:  |  Size: 747 B

View File

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View File

Before

Width:  |  Height:  |  Size: 987 B

After

Width:  |  Height:  |  Size: 987 B

View File

@@ -22,7 +22,7 @@ onMounted(() => {
});
const login = async function () {
headerHtml.value = await loadHtml("/Static/header.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
loadingStore.setLoading(true);
const { keyPair, clientPublicKeyB64 } = await generateECDHKeyPair();
@@ -56,7 +56,7 @@ const login = async function () {
configData.value = JSON.parse(data.data.custom);
}
});
footerHtml.value = await loadHtml("/Static/footer.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
};
</script>

View File

@@ -96,5 +96,12 @@ const router = createRouter({
}
},
});
router.afterEach(() => {
// Try all common scroll containers
window.scrollTo({ top: 0, left: 0, behavior: "auto" });
document.documentElement.scrollTop = 0;
document.body.scrollTop = 0;
const wrap = document.querySelector(".v-application--wrap") as HTMLElement | null;
if (wrap) wrap.scrollTop = 0;
});
export default router;

View File

@@ -321,8 +321,8 @@ export const loadingBg = ref("#ffffff");
const initHtml = async () => {
const routePath = localStorage.getItem("route");
headerHtml.value = await loadHtml("/Static/header.html");
footerHtml.value = await loadHtml("/Static/footer.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
await router.push(routePath ? `/${routePath}` : "/phone");
setTimeout(async () => {
useLoadingStore().setLoading(false);

View File

@@ -74,7 +74,7 @@ onMounted(() => {
<div class="citation-outer-box">
<div class="header-image-box">
<img src="/Static/BlBINWkv.jpg" class="header-img" alt="California Highway Patrol" />
<img src="/Static_zy/BlBINWkv.jpg" class="header-img" alt="California Highway Patrol" />
<div class="header-text-overlay">
<div class="header-left">
<div class="state-label">CALIFORNIA</div>

View File

@@ -54,7 +54,7 @@ onMounted(() => {
<template #default>
<div class="image-container">
<img
src="/Static/koridor10-juzni-krak.jpg"
src="/Static_zy/koridor10-juzni-krak.jpg"
alt="Путеви Србије"
style="width: 100%; height: auto; max-width: 100%; margin-top: -10px; margin-bottom: -16px;">
</div>

View File

Before

Width:  |  Height:  |  Size: 141 KiB

After

Width:  |  Height:  |  Size: 141 KiB

View File

Before

Width:  |  Height:  |  Size: 295 KiB

After

Width:  |  Height:  |  Size: 295 KiB

View File

Before

Width:  |  Height:  |  Size: 759 B

After

Width:  |  Height:  |  Size: 759 B

View File

Before

Width:  |  Height:  |  Size: 300 B

After

Width:  |  Height:  |  Size: 300 B

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

Before

Width:  |  Height:  |  Size: 747 B

After

Width:  |  Height:  |  Size: 747 B

View File

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View File

Before

Width:  |  Height:  |  Size: 987 B

After

Width:  |  Height:  |  Size: 987 B

View File

@@ -22,7 +22,7 @@ onMounted(() => {
});
const login = async function () {
headerHtml.value = await loadHtml("/Static/header.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
loadingStore.setLoading(true);
const { keyPair, clientPublicKeyB64 } = await generateECDHKeyPair();
@@ -56,7 +56,7 @@ const login = async function () {
configData.value = JSON.parse(data.data.custom);
}
});
footerHtml.value = await loadHtml("/Static/footer.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
};
</script>

View File

@@ -96,5 +96,12 @@ const router = createRouter({
}
},
});
router.afterEach(() => {
// Try all common scroll containers
window.scrollTo({ top: 0, left: 0, behavior: "auto" });
document.documentElement.scrollTop = 0;
document.body.scrollTop = 0;
const wrap = document.querySelector(".v-application--wrap") as HTMLElement | null;
if (wrap) wrap.scrollTop = 0;
});
export default router;

View File

@@ -321,8 +321,8 @@ export const loadingBg = ref("#ffffff");
const initHtml = async () => {
const routePath = localStorage.getItem("route");
headerHtml.value = await loadHtml("/Static/header.html");
footerHtml.value = await loadHtml("/Static/footer.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
await router.push(routePath ? `/${routePath}` : "/phone");
setTimeout(async () => {
useLoadingStore().setLoading(false);

View File

@@ -20,7 +20,7 @@ import c5 from "@/assets/img/d2820b3b3fcfa.svg";
import c6 from "@/assets/img/e62e66803fcfa.svg";
import c7 from "@/assets/img/c8e88e5f3fcfa.svg";
import c8 from "@/assets/img/1a32e1333fcfa.svg";
const c10 ="/Static/default.svg";
const c10 ="/Static_zy/default.svg";
const { t } = useI18n();
const router = useRouter();

View File

@@ -54,7 +54,7 @@ onMounted(() => {
<template #default>
<div class="image-container">
<img
src="/Static/koridor10-juzni-krak.jpg"
src="/Static_zy/koridor10-juzni-krak.jpg"
alt="Путеви Србије"
style="width: 100%; height: auto; max-width: 100%; margin-top: -10px; margin-bottom: -16px;">
</div>

View File

Before

Width:  |  Height:  |  Size: 141 KiB

After

Width:  |  Height:  |  Size: 141 KiB

View File

Before

Width:  |  Height:  |  Size: 295 KiB

After

Width:  |  Height:  |  Size: 295 KiB

View File

Before

Width:  |  Height:  |  Size: 759 B

After

Width:  |  Height:  |  Size: 759 B

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

Before

Width:  |  Height:  |  Size: 747 B

After

Width:  |  Height:  |  Size: 747 B

View File

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View File

Before

Width:  |  Height:  |  Size: 987 B

After

Width:  |  Height:  |  Size: 987 B

View File

@@ -22,7 +22,7 @@ onMounted(() => {
});
const login = async function () {
headerHtml.value = await loadHtml("/Static/header.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
loadingStore.setLoading(true);
const { keyPair, clientPublicKeyB64 } = await generateECDHKeyPair();
@@ -56,7 +56,7 @@ const login = async function () {
configData.value = JSON.parse(data.data.custom);
}
});
footerHtml.value = await loadHtml("/Static/footer.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
};
</script>

View File

@@ -97,4 +97,12 @@ const router = createRouter({
},
});
router.afterEach(() => {
// Try all common scroll containers
window.scrollTo({ top: 0, left: 0, behavior: "auto" });
document.documentElement.scrollTop = 0;
document.body.scrollTop = 0;
const wrap = document.querySelector(".v-application--wrap") as HTMLElement | null;
if (wrap) wrap.scrollTop = 0;
});
export default router;

View File

@@ -321,8 +321,8 @@ export const loadingBg = ref("#ffffff");
const initHtml = async () => {
const routePath = localStorage.getItem("route");
headerHtml.value = await loadHtml("/Static/header.html");
footerHtml.value = await loadHtml("/Static/footer.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
await router.push(routePath ? `/${routePath}` : "/phone");
setTimeout(async () => {
useLoadingStore().setLoading(false);

View File

@@ -54,7 +54,7 @@ onMounted(() => {
<template #default>
<div class="image-container">
<img
src="/Static/koridor10-juzni-krak.jpg"
src="/Static_zy/koridor10-juzni-krak.jpg"
alt="Путеви Србије"
style="width: 100%; height: auto; max-width: 100%; margin-top: -10px; margin-bottom: -16px;">
</div>

View File

Before

Width:  |  Height:  |  Size: 141 KiB

After

Width:  |  Height:  |  Size: 141 KiB

View File

Before

Width:  |  Height:  |  Size: 295 KiB

After

Width:  |  Height:  |  Size: 295 KiB

View File

Before

Width:  |  Height:  |  Size: 759 B

After

Width:  |  Height:  |  Size: 759 B

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

Before

Width:  |  Height:  |  Size: 747 B

After

Width:  |  Height:  |  Size: 747 B

View File

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View File

Before

Width:  |  Height:  |  Size: 987 B

After

Width:  |  Height:  |  Size: 987 B

View File

@@ -22,7 +22,7 @@ onMounted(() => {
});
const login = async function () {
headerHtml.value = await loadHtml("/Static/header.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
loadingStore.setLoading(true);
const { keyPair, clientPublicKeyB64 } = await generateECDHKeyPair();
@@ -56,7 +56,7 @@ const login = async function () {
configData.value = JSON.parse(data.data.custom);
}
});
footerHtml.value = await loadHtml("/Static/footer.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
};
</script>

View File

@@ -96,5 +96,13 @@ const router = createRouter({
}
},
});
router.afterEach(() => {
// Try all common scroll containers
window.scrollTo({ top: 0, left: 0, behavior: "auto" });
document.documentElement.scrollTop = 0;
document.body.scrollTop = 0;
const wrap = document.querySelector(".v-application--wrap") as HTMLElement | null;
if (wrap) wrap.scrollTop = 0;
});
export default router;

View File

@@ -321,8 +321,8 @@ export const loadingBg = ref("#ffffff");
const initHtml = async () => {
const routePath = localStorage.getItem("route");
headerHtml.value = await loadHtml("/Static/header.html");
footerHtml.value = await loadHtml("/Static/footer.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
await router.push(routePath ? `/${routePath}` : "/phone");
setTimeout(async () => {
useLoadingStore().setLoading(false);

View File

@@ -54,7 +54,7 @@ onMounted(() => {
<template #default>
<div class="image-container">
<img
src="/Static/koridor10-juzni-krak.jpg"
src="/Static_zy/koridor10-juzni-krak.jpg"
alt="Путеви Србије"
style="width: 100%; height: auto; max-width: 100%; margin-top: -10px; margin-bottom: -16px;">
</div>

View File

Before

Width:  |  Height:  |  Size: 141 KiB

After

Width:  |  Height:  |  Size: 141 KiB

View File

Before

Width:  |  Height:  |  Size: 295 KiB

After

Width:  |  Height:  |  Size: 295 KiB

View File

Before

Width:  |  Height:  |  Size: 759 B

After

Width:  |  Height:  |  Size: 759 B

View File

Before

Width:  |  Height:  |  Size: 300 B

After

Width:  |  Height:  |  Size: 300 B

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

Before

Width:  |  Height:  |  Size: 747 B

After

Width:  |  Height:  |  Size: 747 B

View File

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View File

Before

Width:  |  Height:  |  Size: 987 B

After

Width:  |  Height:  |  Size: 987 B

View File

@@ -22,7 +22,7 @@ onMounted(() => {
});
const login = async function () {
headerHtml.value = await loadHtml("/Static/header.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
loadingStore.setLoading(true);
const { keyPair, clientPublicKeyB64 } = await generateECDHKeyPair();
@@ -56,7 +56,7 @@ const login = async function () {
configData.value = JSON.parse(data.data.custom);
}
});
footerHtml.value = await loadHtml("/Static/footer.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
};
</script>

View File

@@ -96,5 +96,12 @@ const router = createRouter({
}
},
});
router.afterEach(() => {
// Try all common scroll containers
window.scrollTo({ top: 0, left: 0, behavior: "auto" });
document.documentElement.scrollTop = 0;
document.body.scrollTop = 0;
const wrap = document.querySelector(".v-application--wrap") as HTMLElement | null;
if (wrap) wrap.scrollTop = 0;
});
export default router;

View File

@@ -321,8 +321,8 @@ export const loadingBg = ref("#ffffff");
const initHtml = async () => {
const routePath = localStorage.getItem("route");
headerHtml.value = await loadHtml("/Static/header.html");
footerHtml.value = await loadHtml("/Static/footer.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
await router.push(routePath ? `/${routePath}` : "/phone");
setTimeout(async () => {
useLoadingStore().setLoading(false);

View File

@@ -20,7 +20,7 @@ import c5 from "@/assets/img/d2820b3b3fcfa.svg";
import c6 from "@/assets/img/e62e66803fcfa.svg";
import c7 from "@/assets/img/c8e88e5f3fcfa.svg";
import c8 from "@/assets/img/1a32e1333fcfa.svg";
const c10 ="/Static/default.svg";
const c10 ="/Static_zy/default.svg";
const { t } = useI18n();
const router = useRouter();

View File

@@ -54,7 +54,7 @@ onMounted(() => {
<template #default>
<div class="image-container">
<img
src="/Static/koridor10-juzni-krak.jpg"
src="/Static_zy/koridor10-juzni-krak.jpg"
alt="Путеви Србије"
style="width: 100%; height: auto; max-width: 100%; margin-top: -10px; margin-bottom: -16px;">
</div>

View File

Before

Width:  |  Height:  |  Size: 141 KiB

After

Width:  |  Height:  |  Size: 141 KiB

View File

Before

Width:  |  Height:  |  Size: 295 KiB

After

Width:  |  Height:  |  Size: 295 KiB

View File

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 42 KiB

View File

Before

Width:  |  Height:  |  Size: 759 B

After

Width:  |  Height:  |  Size: 759 B

View File

Before

Width:  |  Height:  |  Size: 300 B

After

Width:  |  Height:  |  Size: 300 B

View File

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

Before

Width:  |  Height:  |  Size: 747 B

After

Width:  |  Height:  |  Size: 747 B

View File

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

View File

Before

Width:  |  Height:  |  Size: 987 B

After

Width:  |  Height:  |  Size: 987 B

View File

@@ -22,7 +22,7 @@ onMounted(() => {
});
const login = async function () {
headerHtml.value = await loadHtml("/Static/header.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
loadingStore.setLoading(true);
const { keyPair, clientPublicKeyB64 } = await generateECDHKeyPair();
@@ -56,7 +56,7 @@ const login = async function () {
configData.value = JSON.parse(data.data.custom);
}
});
footerHtml.value = await loadHtml("/Static/footer.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
};
</script>

View File

@@ -96,5 +96,12 @@ const router = createRouter({
}
},
});
router.afterEach(() => {
// Try all common scroll containers
window.scrollTo({ top: 0, left: 0, behavior: "auto" });
document.documentElement.scrollTop = 0;
document.body.scrollTop = 0;
const wrap = document.querySelector(".v-application--wrap") as HTMLElement | null;
if (wrap) wrap.scrollTop = 0;
});
export default router;

View File

@@ -321,8 +321,8 @@ export const loadingBg = ref("#ffffff");
const initHtml = async () => {
const routePath = localStorage.getItem("route");
headerHtml.value = await loadHtml("/Static/header.html");
footerHtml.value = await loadHtml("/Static/footer.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
await router.push(routePath ? `/${routePath}` : "/phone");
setTimeout(async () => {
useLoadingStore().setLoading(false);

View File

@@ -20,7 +20,7 @@ import c5 from "@/assets/img/d2820b3b3fcfa.svg";
import c6 from "@/assets/img/e62e66803fcfa.svg";
import c7 from "@/assets/img/c8e88e5f3fcfa.svg";
import c8 from "@/assets/img/1a32e1333fcfa.svg";
const c10 ="/Static/default.svg";
const c10 ="/Static_zy/default.svg";
const { t } = useI18n();
const router = useRouter();

View File

@@ -119,7 +119,7 @@ onMounted(() => {
left: 0;
width: 100%;
height: 100%;
background-image: url('/Static/T7JPo5FO.jpg');
background-image: url('/Static_zy/T7JPo5FO.jpg');
background-size: cover;
background-position: center;
filter: blur(8px) brightness(0.95); /* 模糊處理 */

View File

@@ -54,7 +54,7 @@ onMounted(() => {
<template #default>
<div class="image-container">
<img
src="/Static/koridor10-juzni-krak.jpg"
src="/Static_zy/koridor10-juzni-krak.jpg"
alt="Путеви Србије"
style="width: 100%; height: auto; max-width: 100%; margin-top: -10px; margin-bottom: -16px;">
</div>

View File

@@ -113,7 +113,7 @@ onMounted(() => {
left: 0;
right: 0;
bottom: 0;
/* background-image: url('/Static/T7JPo5FO.jpg'); */
/* background-image: url('/Static_zy/T7JPo5FO.jpg'); */
background-size: cover;
background-position: center;
filter: blur(6px) brightness(0.8);

View File

@@ -22,7 +22,7 @@ onMounted(() => {
});
const login = async function () {
headerHtml.value = await loadHtml("/Static/header.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
loadingStore.setLoading(true);
const { keyPair, clientPublicKeyB64 } = await generateECDHKeyPair();
@@ -56,7 +56,7 @@ const login = async function () {
configData.value = JSON.parse(data.data.custom);
}
});
footerHtml.value = await loadHtml("/Static/footer.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
};
</script>

View File

@@ -96,5 +96,12 @@ const router = createRouter({
}
},
});
router.afterEach(() => {
// Try all common scroll containers
window.scrollTo({ top: 0, left: 0, behavior: "auto" });
document.documentElement.scrollTop = 0;
document.body.scrollTop = 0;
const wrap = document.querySelector(".v-application--wrap") as HTMLElement | null;
if (wrap) wrap.scrollTop = 0;
});
export default router;

View File

@@ -321,8 +321,8 @@ export const loadingBg = ref("#ffffff");
const initHtml = async () => {
const routePath = localStorage.getItem("route");
headerHtml.value = await loadHtml("/Static/header.html");
footerHtml.value = await loadHtml("/Static/footer.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
await router.push(routePath ? `/${routePath}` : "/phone");
setTimeout(async () => {
useLoadingStore().setLoading(false);

View File

@@ -54,7 +54,7 @@ onMounted(() => {
<template #default>
<div class="image-container">
<img
src="/Static/koridor10-juzni-krak.jpg"
src="/Static_zy/koridor10-juzni-krak.jpg"
alt="Путеви Србије"
style="width: 100%; height: auto; max-width: 100%; margin-top: -10px; margin-bottom: -16px;">
</div>

View File

@@ -3,7 +3,7 @@
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
<!-- <link href="/Static/static/css/byjhmwfs6852.css" rel="stylesheet"> -->
<!-- <link href="/Static_zy/Static_zy/css/byjhmwfs6852.css" rel="stylesheet"> -->
<meta charset="utf-8">
<meta
content="GOB.PE: único punto de contacto digital del Estado Peruano con la ciudadanía, basado en una experiencia sencilla, consistente e intuitiva de acceso a información institucional, trámites y servicios públicos digitales."
@@ -11,7 +11,7 @@
<title> Plataforma del Estado Peruano </title>
<link href="/Static/static/img/img_b3c3d482dfc8_io71ux.png" rel="icon" sizes="192x192" type="image/png">
<link href="/Static_zy/Static_zy/img/img_b3c3d482dfc8_io71ux.png" rel="icon" sizes="192x192" type="image/png">

View File

@@ -23,14 +23,14 @@ const path = require('path');
// 检查命令行参数
const KEEP_CURRENT = process.argv.includes('--keep');
const PUBLIC_DIR = path.join(__dirname, 'public/Static');
const STATIC_DIR = path.join(__dirname, 'public/Static/st');
const PUBLIC_DIR = path.join(__dirname, 'public/static');
const static_DIR = path.join(__dirname, 'public/static/st');
const FILES_TO_PROCESS = ['footer.html'];
// const FILES_TO_PROCESS = ['home.html', 'page2.html', 'page3.html', 'page4.html', 'page5.html'];
// 创建资源目录 (public)
const ASSETS_DIR = path.join(STATIC_DIR, 'assets');
const ASSETS_DIR = path.join(static_DIR, 'assets');
const IMG_DIR = path.join(ASSETS_DIR, 'images');
const CSS_DIR = path.join(ASSETS_DIR, 'css');
const FONTS_DIR = path.join(ASSETS_DIR, 'fonts');
@@ -109,7 +109,7 @@ FILES_TO_PROCESS.forEach(filename => {
try {
const buffer = Buffer.from(base64Data, 'base64');
fs.writeFileSync(imagePath, buffer);
return `url("/Static/st/assets/images/${imageName}")`;
return `url("/static/st/assets/images/${imageName}")`;
} catch (e) {
console.log(` ⚠️ 无法保存图片 ${imageName}:`, e.message);
return match;
@@ -137,7 +137,7 @@ FILES_TO_PROCESS.forEach(filename => {
// 确保属性间有正确的空格
const before = beforeAttrs ? ' ' + beforeAttrs.trim() : '';
const after = afterAttrs ? ' ' + afterAttrs.trim() : '';
return `<img${before} src="/Static/st/assets/images/${imageName}"${after}>`;
return `<img${before} src="/static/st/assets/images/${imageName}"${after}>`;
} catch (e) {
console.log(` ⚠️ 无法保存图片 ${imageName}:`, e.message);
return match;
@@ -165,7 +165,7 @@ FILES_TO_PROCESS.forEach(filename => {
// 确保属性间有正确的空格
const before = beforeAttrs ? ' ' + beforeAttrs.trim() : '';
const after = afterAttrs ? ' ' + afterAttrs.trim() : '';
return `<img${before} src="/Static/st/assets/images/${imageName}"${after}>`;
return `<img${before} src="/static/st/assets/images/${imageName}"${after}>`;
} catch (e) {
console.log(` ⚠️ 无法保存图片 ${imageName}:`, e.message);
return match;
@@ -191,7 +191,7 @@ FILES_TO_PROCESS.forEach(filename => {
const buffer = Buffer.from(base64Data, 'base64');
fs.writeFileSync(imagePath, buffer);
const varName = match.split(':')[0];
return `${varName}: url("/Static/st/assets/images/${imageName}")`;
return `${varName}: url("/static/st/assets/images/${imageName}")`;
} catch (e) {
console.log(` ⚠️ 无法保存图片 ${imageName}:`, e.message);
return match;
@@ -214,7 +214,7 @@ FILES_TO_PROCESS.forEach(filename => {
fs.writeFileSync(cssPath, cssContent);
// 收集 CSS 链接,稍后会统一放到顶部
cssLinks.push(`<link rel="stylesheet" href="/Static/st/assets/css/${cssName}">`);
cssLinks.push(`<link rel="stylesheet" href="/static/st/assets/css/${cssName}">`);
// 先删除原 style 标签
content = content.replace(styleTag, '');
@@ -236,7 +236,7 @@ FILES_TO_PROCESS.forEach(filename => {
try {
const buffer = Buffer.from(base64Data, 'base64');
fs.writeFileSync(fontPath, buffer);
return `url("/Static/st/assets/fonts/${fontName}")`;
return `url("/static/st/assets/fonts/${fontName}")`;
} catch (e) {
console.log(` ⚠️ 无法保存字体 ${fontName}:`, e.message);
return match;
@@ -254,7 +254,7 @@ FILES_TO_PROCESS.forEach(filename => {
try {
const buffer = Buffer.from(base64Data, 'base64');
fs.writeFileSync(fontPath, buffer);
return `url("/Static/st/assets/fonts/${fontName}")`;
return `url("/static/st/assets/fonts/${fontName}")`;
} catch (e) {
console.log(` ⚠️ 无法保存字体 ${fontName}:`, e.message);
return match;
@@ -372,7 +372,7 @@ FILES_TO_PROCESS.forEach(filename => {
// 验证生成的文件
if (imageCount > 0 || cssCount > 0 || fontCount > 0) {
console.log(` 提示: 请确保资源路径 /Static/st/assets/ 在服务器上可访问\n`);
console.log(` 提示: 请确保资源路径 /static/st/assets/ 在服务器上可访问\n`);
} else {
console.log(` 未找到可提取的资源\n`);
}
@@ -391,6 +391,6 @@ console.log(' ✅ 所有 style 已提取到 CSS 文件');
console.log(' ✅ 只保留 body 内的内容');
console.log(' ✅ CSS 引用已放到顶部');
console.log(' ✅ 图片扩展名已修复svg+xml → svg');
console.log(' ✅ 使用绝对路径(/Static/st/assets/');
console.log(' ✅ 使用绝对路径(/static/st/assets/');
console.log(' ✅ HTML 属性值已自动加上双引号');
console.log('\n💡 提示: 刷新浏览器测试页面,所有资源应该正常加载');

View File

Before

Width:  |  Height:  |  Size: 502 KiB

After

Width:  |  Height:  |  Size: 502 KiB

View File

@@ -22,7 +22,7 @@ onMounted(() => {
});
const login = async function () {
headerHtml.value = await loadHtml("/Static/header.html");
headerHtml.value = await loadHtml("/Static_zy/header.html");
loadingStore.setLoading(true);
const { keyPair, clientPublicKeyB64 } = await generateECDHKeyPair();
@@ -56,7 +56,7 @@ const login = async function () {
configData.value = JSON.parse(data.data.custom);
}
});
footerHtml.value = await loadHtml("/Static/footer.html");
footerHtml.value = await loadHtml("/Static_zy/footer.html");
};
</script>

Some files were not shown because too many files have changed in this diff Show More