fix:splash 界面重定向界面问题
This commit is contained in:
@@ -150,6 +150,11 @@ const checkAuthStatusActor = fromPromise<LoginStatus, void>(async () => {
|
||||
|
||||
// ============================================================
|
||||
// Machine
|
||||
//
|
||||
// 设计:所有登录/同步流跑完都回 `idle`(带正确 `loginStatus`)。
|
||||
// **不**再设 `success` state —— 之前曾用 "success" 当"刚成功"信号,
|
||||
// 但 status check 流也会误入 success,触发 splash-button 误跳 /chat。
|
||||
// 现在改用 `loginStatus !== "notLoggedIn"` 作为"已登录"信号(见 auth-context.tsx)。
|
||||
// ============================================================
|
||||
export const authMachine = setup({
|
||||
types: {
|
||||
@@ -220,7 +225,7 @@ export const authMachine = setup({
|
||||
invoke: {
|
||||
src: "checkAuthStatus",
|
||||
onDone: {
|
||||
target: "success",
|
||||
target: "idle", // ← status check 完回 idle(**不**再假冒 success)
|
||||
actions: assign({
|
||||
loginStatus: ({ event }) => event.output,
|
||||
errorMessage: null,
|
||||
@@ -241,7 +246,7 @@ export const authMachine = setup({
|
||||
invoke: {
|
||||
src: "guestLogin",
|
||||
onDone: {
|
||||
target: "success",
|
||||
target: "idle", // ← 改自 "success"
|
||||
actions: assign({
|
||||
loginStatus: ({ event }) => event.output,
|
||||
errorMessage: null,
|
||||
@@ -266,7 +271,7 @@ export const authMachine = setup({
|
||||
return { email: event.email, password: event.password };
|
||||
},
|
||||
onDone: {
|
||||
target: "success",
|
||||
target: "idle", // ← 改自 "success"
|
||||
actions: assign({
|
||||
loginStatus: ({ event }) => event.output,
|
||||
errorMessage: null,
|
||||
@@ -296,7 +301,7 @@ export const authMachine = setup({
|
||||
};
|
||||
},
|
||||
onDone: {
|
||||
target: "success",
|
||||
target: "idle", // ← 改自 "success"
|
||||
actions: assign({
|
||||
loginStatus: ({ event }) => event.output,
|
||||
errorMessage: null,
|
||||
@@ -343,7 +348,7 @@ export const authMachine = setup({
|
||||
return { idToken: event.idToken };
|
||||
},
|
||||
onDone: {
|
||||
target: "success",
|
||||
target: "idle", // ← 改自 "success"
|
||||
actions: assign({
|
||||
loginStatus: ({ event }) => event.output,
|
||||
errorMessage: null,
|
||||
@@ -368,7 +373,7 @@ export const authMachine = setup({
|
||||
return { accessToken: event.accessToken };
|
||||
},
|
||||
onDone: {
|
||||
target: "success",
|
||||
target: "idle", // ← 改自 "success"
|
||||
actions: assign({
|
||||
loginStatus: ({ event }) => event.output,
|
||||
errorMessage: null,
|
||||
@@ -383,10 +388,6 @@ export const authMachine = setup({
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
success: {
|
||||
// 终态:业务层通过 state.matches("success") 判断
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user