你在这里。看看这个问题与其他知识怎样相连。
选择节点前往页面 · 展开后可留在地图中阅读
一个问题
table:什么时候用表格表达数据?
table 用列定义与行数据表达可比较的记录。
对照多个任务的名称、状态与负责人时,表格比一段文字便于横向比较。sort 与 select 是注册的事件;是否让排序触发业务查询,要看应用如何绑定。不要把本地显示顺序当成数据库已经更新。
先认识这些属性
columns 说明有哪些列:key 指向每条记录中的字段,label 是人看到的列标题,align 指定文字对齐。rows 则提供记录本身。两者通过字段名对应,而不是靠文字在屏幕上的位置匹配。
sort 表达排序意图,select 表达选择一行。应用可以把事件接到查询或查看动作;不要把一次表头点击当成数据库已经变更。
读一个结构例子
以下摘自源码注册示例。它展示结构,未在本页运行;示例中的路径和动作需要应用提供。
{
"id": "user-table",
"type": "table",
"props": {
"columns": [
{
"key": "name",
"label": "Name"
},
{
"key": "email",
"label": "Email"
},
{
"key": "role",
"label": "Role",
"align": "center"
}
],
"rows": [
{
"name": "Alice",
"email": "alice@co.com",
"role": "Admin"
},
{
"name": "Bob",
"email": "bob@co.com",
"role": "User"
}
]
},
"events": {
"select": {
"exec": "/users/.actions/view",
"args": {}
}
}
}例如列的 key: "name" 读取 Alice 或 Bob,label: "Name" 显示在表头。role: "Admin" 在这个例子里只是表格数据,不表示表格授予管理员权限。select 连接到查看动作;例子没有展开被选记录如何传入该动作的处理细节。
检查一下理解
任务的名称、状态、负责人要横向比较,table 提供哪两个基本部分?
列定义描述要比较的字段,行数据提供各条任务记录。