0.2.24 • Published 2 years ago

tmaito-page v0.2.24

Weekly downloads
106
License
ISC
Repository
-
Last release
2 years ago

Quick Start

Install

npm i tmaito-page
// or
yarn add tmaito-page

Use

import Page, { Switch, Divider, ExtraAction, Typography, Progress, Collapse, Timeline } form 'tmaito-page';

// style
@import 'tmaito-page/dist/index.css'

API

Page

参数说明类型默认值
layout页面展示样式,是否有边界间隙string,可选值有 normal-
loading页面是否加载中booleanfalse
width宽度string\number100%
height高度string\number100%
animated高度变化时是否使用动画booleanfalse
className类名string-
multipleable是否跨页勾选booleanfalse
filterBeforeTab筛选区域 and tab区域位置关系, 默认filter在前booleantrue
filter筛选区域boolean | objectfalse
tabtab切换区域boolean | objectfalse
table表格区域boolean | objectfalse
renderContent自定义内容展示string|ReactNodenull
pagination翻页&&全选区域boolean | objectfalse
footer底部操作栏boolean | objectfalse

提示

供外部调用方法 onresize 重置Page高度计算

Collapse

伸缩框 | 参数 | 说明 | 类型 | 默认值 | | -------- | ------------ | ---------------- | ------ | | children | 展示内容 | | 无 | | height | 默认展示高度 | string | number | 0 | | onChange | 当前展示高度 | number | 0 |

Switch

购销方租户切换

参数说明类型默认值
onChange左右切换回调函数Function(values, key) {}
rightSwitchabled右侧是否禁止切换booleanfalse

Divider

标题标注线

参数说明类型默认值
content标题内容string|ReactNode
type样式,可选值 'primary'、'danger'、'warning'、'success'stringdefault

ExtraAction

扩展元素

参数说明类型默认值
typeButton 展示类型,可选值 linkstring-
sizeButton 设置按钮大小,可选值为 default largestringsmall
limit默认展示数量number3
dataButton 操作集合object[][]

data 数据事例如下:

[{
  authcode: 'A01202001', // 资源码
  type: 'primary', // btn 类型
  label: '手工添加', // btn 文案
  loading: false, // loading
  onClick: handleAddManual, // 点击事件
  'ubt-data': JSON.stringify({ // 埋点扩展数据
    bizType: 'insertOrder',
    bizData: 'xxxx'
  }),
  render: () => {} // 复杂渲染函数
}]

Typography

排版,监听页面宽度变化,动态调整单行展示列数 | 参数 | 说明 | 类型 | 默认值 | | ---------- | --------------------------- | ------ | ---------- | | span | 展示的列宽 同 antd Col 组件 | number | 6 | | labelCol | 同 antd Col 组件 | object | {span: 8} | | wrapperCol | 同 antd Col 组件 | object | {span: 16} |

更多参数可酌情参考 antd Tabs

分辨率 <= 1280 时,展示 3列 分辨率 <= 1680 时,展示 4列 分辨率 > 1680 时,展示 5 列

Typography.Item

参数说明类型默认值
span展示的列宽 同 antd Col 组件,未设置则默认为父组件 span值number
label标题string|ReactNode
children内容string|ReactNode
labelCol同 antd Col 组件object{span: 8}
wrapperCol同 antd Col 组件object{span: 16}

Progress

基于 antd Progress 模拟进度条; 进度条规则:

  • 30 s 以内,进度条每1s + 3
  • 51 s 以内,进度条每3s + 1
  • 51 s 之后,进度条每30s + 1, 直至 100

Timeline

垂直展示的时间流信息。

参数说明类型默认值
mode通过设置 mode 可以改变时间轴和内容的相对位置'alternate'-
dataSource节点集合Array[]

说明:

  [{
    label: 'zhu',
    content: '时刻劳动模范个十六开本时刻劳动模范个十六开本时刻劳动模范个十六开本',
    time: '2018.09.23'
  }]

filter

参数说明类型默认值
limit默认展示筛选项的数量number3
fields筛选项数组object[][]
initialValues筛选项默认初始值object 🌰:{code: value}{}
extraAction右侧 btn 区域额外的元素object[] data 属性[]
onChange操作筛选项时实时变化参数Function(key, values) {}
onSearch查询 or 重置时,回调筛选项参数Function(values) {}
resetButtonsPropsreset 按钮 propsButtonProps
searchButtonsPropssearch 按钮 propsButtonProps

fields

参数说明类型默认值
type筛选项类型stringinput
labellabel 标签的文本stringReactNode
code筛选项字段string
authcode资源码string
value筛选项值string|string[]|numbernumber[]
optionstype 为 select时生效,下拉选项object[]
placeholder提示信息string
format日期格式string
itemLayout筛选项布局object

itemLayout 使用方式:

  itemLayout: {
    labelCol: {
      span: 6 // 默认值
    },
    wrapperCol: {
      span: 18 // 默认值
    }
  }

options

下拉选项 | 参数 | 说明 | 类型 | 默认值 | | -------- | ---------- | -------------- | ------ | | label | 标签的文本 | string | - | | value | 属性值 | string|number | - | | disabled | 是否禁用 | boolean | false |

type 可选值如下:

  • input: 输入框
  • select: 下拉列表
  • selectSearch: 下拉列表,远程搜索,防抖控制
  • checkbox: 复选框
  • radio: 单选框
  • range: 输入框范围 number 类型
  • rangeInput: 输入框范围
  • datePicker: 日期,默认 'YYYY-MM-DD'
  • rangePicker: 日期范围,默认 'YYYY-MM-DD'
  • monthPicker: 月份,默认 'YYYY-MM'

注意: datePickerrangePickermonthPicker 筛选项,

可设置 disabledDate 来控制是否禁止不可选择当天之后的日期, 默认值 true 若设置 format,则展示格式遵循 format 格式 若设置 vformat,则返回值格式遵循 vformat 格式, 默认返回时间戳格式

typeselectSearch 时:

接口规范如下:

api: {
    method: 'GET',
    url: '/api/eccp/v1/supplier',
    searchKey: 'supplierName', // 当前搜索字段传入 接口的对应 key 值
    params: { // query 值
      page: 1,
      pageSize: 20
    },
    data: {}, // body 值
    transformResponse: (res) => { // 回调函数,处理接口返回值,返回值格式 遵照 `select options`
      const { code, result } = res;
      const { records = [] } = result || {};
      if (code === 1) {
        return records.map((item) => ({
          label: item.supplierName,
          value: item.supplierCode
        }));
      }
      return [];
    }
  }

tab

标签页

参数说明类型默认值
codetab 组件对应的接口属性字段string
activeKey当前激活 tab 面板的 keystring
showCount是否展示统计数booleanfalse
tabSourceTabBar 的集合object[][]
onChange切换面板的回调Function(activeKey) {}
extraActiontab bar 上额外的元素object[] data 属性[]
extraActionLimittab bar 上额外的元素默认展示数量number2

提示

除以上参数,其他参数可酌情参考 antd Tabs

tabSource

参数说明类型默认值
key对应 activeKeystring
count选项卡头显示统计数量, showCounttrue 时生效string|number0
label选项卡头显示文字string|ReactNode
render替换 TabBar,用于二次封装单个标签头Function(record, index) {}

table

参数说明类型默认值
mode两种列表展示模式,antd-table or virtual-table,列表数量大时可选择virtual模式,可选值 'virtual'string-
rowKey表格行 key 的取值string'key'
columns表格列属性Array[]
dataSource当前页表格数据源Array[]
dragable列表项是否可拖拽排序Booleanfalse
sortable表头是否可重新排序Booleanfalse
resizable表头是否可拖拽调整列宽,需要与column.width配合使用Booleanfalse
onDragable列表项拖拽事件,返回排序后的数据源Function(dataSource)-
onResizable表头拖拽调整列宽事件,返回调整后的列表属性Function(columns)-
onSortChange表头列表调整顺序,返回调整后的列表顺序Function(columns)-
rowSelection表格行是否可选择, 配置项参考 antdobjectnull
hideExpandIcon额外的展开行图标是否展示booleantrue
expandRow额外的展开行相关属性objectnull

提示:

若含有额外的展开行操作,则父table内所有列属性的fixed失效 table 中 rowSelection 属性的 selectedRowKeys 格式为:

[
  {
    id: 'xxx', // 表格行 rowKey 的取值, 必须字段
    record: {...record}, // 勾选行属性
    selectedRowKeys: [], // 子表格选中字段 key 集合
    selectedList: [], // 子表格选中行集合
    unselectedList: [], // 子表格未选中行集合
    unselectedRowKeys: [] // 子表格未选中的字段 key 集合
  }
]

pagination

翻页相关属性

参数说明类型默认值
total数据总数number0 |
pageNo当前页数number1 |
pageSize每页条数number20
pagination是否展示翻页组件booleantrue
showTotal用于显示数据总量和当前数据顺序Function(total, range)
extraContent额外的元素,居左展示React.ReactNode
onPageChangepageNo, pageSize 改变的回调Function(pageNo, pageSize)
pageSizeOptions指定每页可以显示多少条string[]'20', '50', '100', '200'

提示

除以上参数以及 size 等,其他参数可酌情参考 antd pagination

footer

底部操作栏相关属性

参数说明类型默认值
extraContent额外的展示元素,居左展示React.ReactNode
extraAction额外的操作元素,居右展示object[] data 属性[]
labelColantd \<Col> 组件object{span: 12}
wrapperColantd \<Col> 组件object{span: 12}

expandRow

额外的展开行相关属性

参数说明类型默认值
expandIcon参照 antd 相关属性
expandRowByClick参照 antd 相关属性
expandIconColumnIndex参照 antd 相关属性
onClick单击行展开事件Function(record)-
onDoubleClick双击行展开事件Function(record)-
onDoubleClick双击行展开事件Function(record)-
loading页面是否加载中booleanfalse
rowKey表格行 key 的取值string'key'
columns表格列属性Array[]
dataSource当前页表格数据源Array[]
selectionable是否可勾选Booleanfalse
getCheckboxProps选择框的默认属性配置Function(record)-
0.2.24

2 years ago

0.2.23

2 years ago

0.2.22

3 years ago

0.2.21

3 years ago

0.2.20

3 years ago

0.2.19

3 years ago

0.2.18

3 years ago

0.2.17

3 years ago

0.2.16

3 years ago

0.2.15

3 years ago

0.2.14

3 years ago

0.2.13

3 years ago

0.2.12

3 years ago

0.2.11

3 years ago

0.2.10

3 years ago

0.2.7

3 years ago

0.2.6

3 years ago

0.2.9

3 years ago

0.2.8

3 years ago

0.2.5

3 years ago

0.2.4

3 years ago

0.2.3

3 years ago

0.2.2

3 years ago

0.2.1

3 years ago

0.1.86

3 years ago

0.1.87

3 years ago

0.1.88

3 years ago

0.2.0

3 years ago

0.1.85

3 years ago

0.1.84

3 years ago

0.1.83

3 years ago

0.1.81

3 years ago

0.1.82

3 years ago

0.1.80

3 years ago

0.1.79

3 years ago

0.1.77

3 years ago

0.1.78

3 years ago

0.1.75

3 years ago

0.1.76

3 years ago

0.1.74

3 years ago

0.1.73

3 years ago

0.1.72

3 years ago

0.1.71

3 years ago

0.1.70

3 years ago

0.1.68

3 years ago

0.1.69

3 years ago

0.1.67

3 years ago

0.1.66

3 years ago

0.1.65

3 years ago

0.1.63

3 years ago

0.1.64

3 years ago

0.1.62

3 years ago

0.1.61

3 years ago

0.1.60

3 years ago

0.1.59

3 years ago

0.1.58

3 years ago

0.1.53

3 years ago

0.1.55

3 years ago

0.1.56

3 years ago

0.1.57

3 years ago

0.1.52

3 years ago

0.1.51

3 years ago

0.1.50

3 years ago

0.1.48

3 years ago

0.1.47

3 years ago

0.1.45

3 years ago

0.1.46

3 years ago

0.1.43

3 years ago

0.1.44

3 years ago

0.1.41

3 years ago

0.1.42

3 years ago

0.1.40

3 years ago

0.1.39

3 years ago

0.1.38

3 years ago

0.1.37

3 years ago

0.1.36

3 years ago

0.1.35

3 years ago

0.1.34

3 years ago

0.1.33

3 years ago

0.1.31

4 years ago

0.1.32

3 years ago

0.1.30

4 years ago

0.1.29

4 years ago

0.1.28

4 years ago

0.1.27

4 years ago

0.1.26

4 years ago

0.1.25

4 years ago

0.1.23

4 years ago

0.1.24

4 years ago

0.1.22

4 years ago

0.1.21

4 years ago

0.1.20

4 years ago

0.1.18

4 years ago

0.1.19

4 years ago

0.1.17

4 years ago

0.1.16

4 years ago

0.1.15

4 years ago

0.1.14

4 years ago

0.1.13

4 years ago

0.1.12

4 years ago

0.1.11

4 years ago

0.1.10

4 years ago

0.1.9

4 years ago

0.1.8

4 years ago

0.1.7

4 years ago

0.1.6

4 years ago

0.1.5

4 years ago

0.1.3

4 years ago

0.1.2

4 years ago

0.1.1

4 years ago

0.0.25

4 years ago

0.1.0

4 years ago

0.0.24

4 years ago

0.0.23

4 years ago

0.0.22

4 years ago

0.0.21

4 years ago

0.0.20

4 years ago

0.0.19

4 years ago

0.0.18

4 years ago

0.0.17

4 years ago

0.0.16

4 years ago

0.0.15

4 years ago

0.0.14

4 years ago

0.0.13

4 years ago

0.0.12

4 years ago

0.0.11

4 years ago

0.0.10

4 years ago

0.0.9

4 years ago

0.0.8

4 years ago

0.0.7

4 years ago

0.0.6

4 years ago

0.0.3

4 years ago

0.0.5

4 years ago

0.0.4

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago