跳到主要内容
知识地图afs-list:同一批资源能有不同列表视图吗?ArcBlock 体系

你在这里。看看这个问题与其他知识怎样相连。

选择节点前往页面 · 展开后可留在地图中阅读

知识地图沿着连接,读懂一个问题
← AFS 与界面

一个问题

afs-list:同一批资源能有不同列表视图吗?

afs-list 把 AFS 资源集合组织成列表、网格等呈现。

一组文章可以显示成卡片网格,也可以显示成紧凑列表。layout 决定空间排列,itemStyle 决定每项的呈现方式。这两个维度让数据集合与视觉选择分开;过滤、排序与订阅还要按目标运行时的支持配置。

先认识这些属性

layout 管空间排列,itemStyle 管单个条目的呈现。filter 选择显示哪些条目,sort 决定排序。它们描述资源集合的视图,不是访问控制规则:没有显示出来,不表示其他入口也不能读取。

先从本例使用的 select 理解交互:选中资源后,应用决定下一步做什么。注册表还包含导航、展开、折叠、多选变化等事件;完整名称和载荷应查对应参考,不必先记住整份清单。

读一个结构例子

以下摘自源码注册示例。它展示结构,未在本页运行;示例中的路径和动作需要应用提供。

json
{
  "id": "project-grid",
  "type": "afs-list",
  "src": "/teams/arcblock-core/workspaces/",
  "props": {
    "layout": "grid",
    "itemStyle": "card",
    "gridCols": 3,
    "clickMode": "select",
    "searchable": true,
    "emptyText": "No workspaces"
  },
  "events": {
    "select": {
      "exec": "/dev/ui/.actions/navigate-workspace",
      "args": {}
    }
  }
}

例子从节点顶层 src 读取资源集合,使用三列卡片网格。searchable 打开搜索入口,emptyText 是没有条目时的文案。clickMode: "select" 选择触发选择事件;事件再连接到示例中的工作空间导航动作。它不是把标题文字当作资源地址,也没有在这段JSON中展开被选条目的传参细节。

查看 afs-list 的技术文档。

检查一下理解

卡片网格变成紧凑列表,分别涉及哪两个维度?

layout 管排列方式,itemStyle 管每个条目的呈现方式。