amis/docs/zh-CN/components/table-view.md
吴多益 56e9602869
feat: table view 组件 (#2139)
* 更新 snapshot

* feat: datetime 组件时间支持可点选 (#2100)

* 文档和一些小修改 (#2107)

* jssdk 支持 hash路由改造

* 更新文档

* default value 和  value 逻辑优化

* 优化 value 的处理逻辑

* 同步值应该固定某一种模式

* name 干脆支持 filter 好了

* 更新的时候获取数据不一致

* 修复 qrcode 获取值方式

* columns 有可能不是数组

* feat: 增加 table-view 初步

* 修复 ECharts 编辑器的问题

* 方便编辑器编辑

Co-authored-by: 2betop <2betop.cn@gmail.com>
Co-authored-by: Allen <yupeng.cqupt@qq.com>
Co-authored-by: RickCole <rickcole21@outlook.com>
2021-06-24 10:18:12 +08:00

5.4 KiB

title description type group menuName icon order
Table View 表格展现 0 ⚙ 组件 Table View 表格展现 68

1.2.0 及以上版本才有此功能

通过表格的方式来展现数据,和 table 的不同之处:

  • 数据源要求不同
    • table 的数据源需要是多行的数据,最典型的就是来自某个数据库的表
    • table view 的数据源可以来自各种固定的数据,比如单元格的某一列是来自某个变量
  • 功能不同
    • table 只能用来做数据表的展现
    • table view 除了展现复杂的报表,还能用来进行布局
  • 合并单元格方式不同
    • table 的合并单元格需要依赖数据
    • table view 的合并单元格是手动指定的,因此可以支持不规则的数据格式

基本用法

{
  "type": "service",
  "data": {
    "beijing": "20",
    "tianjing": "19"
  },
  "body": [
    {
      "type": "table-view",
      "trs": [
        {
          "background": "#F7F7F7",
          "tds": [
            {
              "body": {
                "type": "tpl",
                "tpl": "地区"
              }
            },
            {
              "body": {
                "type": "tpl",
                "tpl": "城市"
              }
            },
            {
              "body": {
                "type": "tpl",
                "tpl": "销量"
              }
            }
          ]
        },
        {
          "tds": [
            {
              "rowspan": 2,
              "body": {
                "type": "tpl",
                "tpl": " 华北"
              }
            },
            {
              "body": {
                "type": "tpl",
                "tpl": "北京"
              }
            },
            {
              "body": {
                "type": "tpl",
                "tpl": "${beijing}"
              }
            }
          ]
        },
        {
          "tds": [
            {
              "body": {
                "type": "tpl",
                "tpl": "天津"
              }
            },
            {
              "body": {
                "type": "tpl",
                "tpl": "${tianjing}"
              }
            }
          ]
        }
      ]
    }
  ]
}

可以看到 table view 需要手动进行单元格合并,因此更适合使用可视化编辑器进行编辑。

设置项

table view 的设置项有三层,可以分别对表格级别、行级别、单元格级别进行设置。

表格设置项

属性名 类型 默认值 说明
width number/string '100%'
padding number/string 'var(--TableCell-paddingY) var(--TableCell-paddingX)' 单元格默认内间距
border boolean true 是否显示边框
borderColor string var(--borderColor) 边框颜色
trs 参考下面的行设置

行设置

属性名 类型 默认值 说明
height number/string
background string 行背景色
tds 参考下面的单元格设置

单元格设置

属性名 类型 默认值 说明
background string 单元格背景色
color string 单元格文字颜色
bold boolean false 单元格文字是否加粗
width number/string 单元格宽度,只需要设置第一行
padding number/string 集成表格的设置 单元格内间距
align string left 单元格内的水平对齐,可以是 leftcenterright
valign string middle 单元格内的垂直对齐,可以是 topmiddlebottombaseline
colspan number 单元格水平跨几行
rowspan number 单元格垂直跨几列
body SchemaNode 其它 amis 设置