fix(登录页): 移除登录页硬编码的默认账号密码

新增单元测试用例验证该改动,确保不会预填硬编码的默认凭据,同时保留记住账号的恢复逻辑
This commit is contained in:
duanshuwen
2026-08-27 15:03:50 +08:00
parent 114020d7a8
commit 3d2a2845b9
2 changed files with 16 additions and 1 deletions

View File

@@ -0,0 +1,15 @@
import { readFileSync } from "node:fs";
import { describe, expect, it } from "vitest";
const source = readFileSync(new URL("./LoginPage.vue", import.meta.url), "utf8");
describe("登录页凭据初始化", () => {
it("不预填账号和密码,但保留记住密码的账号恢复逻辑", () => {
expect(source).toContain("email: rememberedEmail, password: \"\"");
expect(source).toContain("rememberMe: Boolean(rememberedEmail)");
expect(source).toContain("window.localStorage.setItem(rememberedEmailKey, form.email.trim())");
expect(source).toContain("window.localStorage.removeItem(rememberedEmailKey)");
expect(source).not.toContain("admin@example.com");
expect(source).not.toContain("ChangeMe123!");
});
});

View File

@@ -10,7 +10,7 @@ const router = useRouter();
const route = useRoute();
const rememberedEmailKey = "wonderq-admin-remembered-email";
const rememberedEmail = typeof window === "undefined" ? "" : window.localStorage.getItem(rememberedEmailKey) ?? "";
const form = reactive({ email: rememberedEmail || "admin@example.com", password: "ChangeMe123!", captchaId: "", captchaCode: "", rememberMe: Boolean(rememberedEmail) });
const form = reactive({ email: rememberedEmail, password: "", captchaId: "", captchaCode: "", rememberMe: Boolean(rememberedEmail) });
const error = ref("");
const captchaImage = ref("");
const captchaLoading = ref(false);