跳转到内容

SusLobbyScreenContent

SusLobbyScreenContent

中心 / 大厅外壳 — back、标题芯片、tabs、空态 alert、child-view 宿主、Ready + Vs AI 页脚动作。

SusGame · 屏幕(商业)

在 Playground 中打开

SusGame · Screens

属性

名称类型默认值
TitleProp<string>"Hub"
EmptyTextProp<string>"No data"
CanActProp<bool>false
HasDataProp<bool>false
ActionLabelProp<string>"Ready"
SoloActionLabelProp<string>"Vs AI"

插槽

没有插槽。

事件

没有公开事件。

样式钩子

USS 类契约 — 无需改 C# 即可覆盖外观。状态通过这些类切换:

  • sc-lobby-footer
  • sc-lobby-header
  • sus-lobby-screen
  • sus-lobby-screen__back-btn
  • sus-lobby-screen__child-view
  • sus-lobby-screen__content
  • sus-lobby-screen__empty-text
  • sus-lobby-screen__row
  • sus-lobby-screen__row-icon
  • sus-lobby-screen__row-label
  • sus-lobby-screen__row-value
  • sus-lobby-screen__rows
  • sus-lobby-screen__solo-action-btn
  • sus-lobby-screen__tabs
  • sus-lobby-screen__title
  • sus-lobby-screen--limbo

用法

绑定 chrome props;从宿主或子视图填充 Tabs / ChildViewHost。用 CanAct 控制页脚。

xml
<template>
  <sus:SusLobbyScreenContent
    :Title="Title.Value"
    :EmptyText="Empty.Value"
    :CanAct="Ready.Value"
    :ActionLabel="Act.Value"
    :SoloActionLabel="Solo.Value"
  />
</template>

<script>
public Prop<string> Title = new("Hub");
public Prop<string> Empty = new("No data");
public Prop<bool> Ready = new(false);
public Prop<string> Act = new("Ready");
public Prop<string> Solo = new("Vs AI");
</script>
csharp
var lobby = new SusLobbyScreenContent();
lobby.Title.Value = "Multiplayer";
lobby.EmptyText.Value = "No parties";
lobby.CanAct.Value = true;
lobby.ActionLabel.Value = "Ready";
lobby.SoloActionLabel.Value = "Vs AI";
// After mount:
lobby.Tabs.Items.Value = new List<SusTabs.TabItem> {
  new() { Title = "Parties", Value = "parties" },
  new() { Title = "Friends", Value = "friends" },
};
lobby.ChildViewHost.Add(myListView);
lobby.BackBtn.OnClick += () => { /* back */ };
lobby.ActionBtn.OnClick += () => { /* ready */ };
lobby.SoloActionBtn.OnClick += () => { /* vs AI */ };
Prop / APIRole
Title头部芯片文本
EmptyText空态 alert;空字符串 → 隐藏
CanAct启用/禁用两个页脚按钮(Disabled = !CanAct
ActionLabel / SoloActionLabelReady / Vs AI 文本
HasData已声明的 Prop<bool> — 当前 pin 未接入 UI
BackBtn / Tabs / EmptyAlert / ActionBtn / SoloActionBtn宿主接线
ChildViewHost在此挂载列表/详情内容

备注

  • Root 上存在 USS 修饰符 --limbo,用于透明遮罩 hub(从宿主添加该类)。
  • Tabs 初始为空 — 宿主必须设置 Items / Model
  • HasData 在 API 中被提取,但 WireProps 未使用;空态请通过 EmptyText + 宿主可见性驱动。