0.0.1-rc.1 • Published 2 years ago

formatter-data v0.0.1-rc.1

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

formatter-data

一个用来格式化数据的工具

使用

npm i formatter-data

页面中引入

import { formatter } from 'formatter-data'

API

在此提供了3种格式化函数的方法

分别是object,list,treeList

object

解析映射

formatter('object',
{
  data: 'record.data',
  code: 'errorCode',
  pageNum: 'pageInfo.pageNum',
  'pagination.pageInfos.current': 'pageInfo.pageIndex',
  'pagination.pageInfos.pageSize': 'pageInfo.pageNum',
  'pagination.pageInfos.total': 'pageInfo.total',
})(data);
// record.data => data
// errorCode => code
// pageInfo: { pageNum } => pageNum
// =================================
// pageInfo: { pageIndex }
// pageInfo: { pageNum }
// pageInfo: { total } 
// => pagination: { pageInfos: { pageIndex, pageNum, total } }
list

解析映射,但 rule 为一个数组

rule: 映射的data,对data数组进行处理的规则

注意:rule[0]中必须为 data

formatter('list', [
  {
    data: 'record.data',
    'code.errorCode': 'errorCode'
  },
  { label: 'name', a: 'value' }
])(data)
// record.data => data
// errorCode => code: { errorCode }
// record.data[0].name => record.data[0].label
// record.data[0].value => record.data[0].a
treeList

list相同,但可以解析 children

formatter('treeList', [
  { 
     data: 'record.data',
  	'code.errorCode': 'errorCode'
  },
  { labels: 'name', values: 'value', children: 'children' }
])(data);
// record.data => data
// errorCode => code: { errorCode }
// record.data[0].name => record.data[0].label
// record.data[0].value => record.data[0].values
// children: 和 data 一样进行递归处理
0.0.1-rc.1

2 years ago

0.0.1-beta

2 years ago