详情页差异改由「入口上下文」驱动:导航层按当前一侧写 from=co-creation,玩家侧(游戏 Tab/广场/搜索/收藏/我的游戏/默认深链)不看血缘与共创标签、开始共创弱化;登录态只决定能否共创
Project CI / Backend tests (pull_request) Failing after 34s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 4m48s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 7m1s
Project CI / Repository checks (pull_request) Failing after 25s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 7m10s
Project CI / Frontend tests (pull_request) Successful in 2m30s
Project CI / AI game creator shell web tests (pull_request) Failing after 2m32s
Project CI / Native shell tests (pull_request) Successful in 7m24s
Project CI / Backend tests (pull_request) Failing after 34s
Project CI / AI game creator shell Rust crates (pull_request) Successful in 4m48s
Project CI / AI game creator shell Rust lane 1/2 (pull_request) Successful in 7m1s
Project CI / Repository checks (pull_request) Failing after 25s
Project CI / AI game creator shell Rust lane 2/2 (pull_request) Successful in 7m10s
Project CI / Frontend tests (pull_request) Successful in 2m30s
Project CI / AI game creator shell web tests (pull_request) Failing after 2m32s
Project CI / Native shell tests (pull_request) Successful in 7m24s
This commit is contained in:
@@ -29,6 +29,7 @@ import {
|
||||
hasAppHistoryBackEntry,
|
||||
pushAppHistoryPath,
|
||||
replaceAppHistoryPath,
|
||||
resolveSelectionStageFromPath,
|
||||
} from '../../routing/activeAppPageRoutes';
|
||||
import {
|
||||
connectionsPath,
|
||||
@@ -44,6 +45,10 @@ import { PlatformActionButton } from '../common/PlatformActionButton';
|
||||
import { PlatformSubpanel } from '../common/PlatformSubpanel';
|
||||
import { ClientDownloadEntry } from '../creation-home/ClientDownloadEntry';
|
||||
import { setCreatorViewer } from '../creator/creatorRelationshipState';
|
||||
import {
|
||||
CO_CREATION_DETAIL_SOURCE,
|
||||
shouldCarryCoCreationSource,
|
||||
} from '../game-distribution/gameViewerRole';
|
||||
import { PaymentCheckoutView } from './PaymentCheckoutView';
|
||||
import {
|
||||
PlatformActiveMobileWelcomeDialog,
|
||||
@@ -558,6 +563,27 @@ export function PlatformEntryFlowShellImpl({
|
||||
// 作者视角要一直带着 owner 作用域:刷新或直接打开该链接时详情页仍读
|
||||
// `GET /my-games/{gameId}`,否则作者点自己的未公开作品只会拿到公开接口的 404。
|
||||
if (options?.owner) params.set('owner', '1');
|
||||
/*
|
||||
* **入口上下文**(2026-10-07 产品口径更正:游客 = 点开游戏界面的玩家,不是「未登录访客」):
|
||||
* 从共创侧(共创 Tab / 族谱页 / 对比页)打开详情时带上 `from=co-creation`,
|
||||
* 详情页据此决定「看不看得到血缘图与共创标签」;其余来源 = 玩家侧(不带标记)。
|
||||
* 已经在共创侧详情页里继续跳(血缘链 / 主题 / 相关作品)时保留标记,不中途掉回玩家侧。
|
||||
* 用 URL 而不是内存 stage:刷新、深链、分享链接都稳定。
|
||||
*/
|
||||
const currentStage = resolveSelectionStageFromPath(
|
||||
window.location.pathname,
|
||||
);
|
||||
const currentSource = new URLSearchParams(window.location.search).get(
|
||||
'from',
|
||||
);
|
||||
if (
|
||||
shouldCarryCoCreationSource({
|
||||
stage: currentStage,
|
||||
currentSource,
|
||||
})
|
||||
) {
|
||||
params.set('from', CO_CREATION_DETAIL_SOURCE);
|
||||
}
|
||||
const path = `/games/detail?${params.toString()}`;
|
||||
setSelectionStage('game-detail', { path });
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user