zw-simple-data

1.0.0 • Public • Published

DataAdapter

用于前端深层次数据获取和数据处理

介绍

作者也介绍不出来什么,看用例吧

使用方法

安全数据获取

import DataAdapter from 'zw-data-adapter';

const originData = {
  result: {
    name: 'zw',
    time: '2021/2/10',
    title: '标题',
    list: [
      { content: '这是第一条记录' }
      { content: '这是第二条记录' }
    ]
  }
}

const db = DataAdapter(originData);

// 字符串形式获取参数
db.get('result.name') // zw 
db.get('result.list.0.content') // 这是第一条记录
db.get('result.emptyKey') // undefined
db.get('result.emptyKey.emptySubKey') // undefined

// 数组形式获取参数
db.get(['result', 'name']) // zw
db.get(['result', 'list', '0', 'content'])  // 这是第一条记录
db.get(['result', 'emptyKey'])  // undefinde
db.get(['result', 'emptyKey', 'emptySubkey']) // undefined

数据获取和设置别名

import DataAdapter from 'zw-data-adapter';

const originData = {
  result: {
    name: 'zw',
    time: '2021/2/10',
    title: '标题',
    list: [
      { content: '这是第一条记录' }
      { content: '这是第二条记录' }
    ]
  }
}

const db = DataAdapter(originData);

db.get({
  author: 'result.name',
  articalTitle: 'result.title',
}); // { author: 'zw', articalTitle: '标题' }

数组数据获取

import DataAdapter from 'zw-data-adapter';

const originData = {
  result: {
    name: 'zw',
    time: '2021/2/10',
    title: '标题',
    list: [
      { content: '这是第一条记录' }
      { content: '这是第二条记录' }
    ]
  }
}

const db = DataAdapter(originData);

db.get('result.list') // [{ content: '这是第一条记录' }, { content: '这是第二条记录' }]

db.get('result.list.0') // { content: '这是第一条记录' }

db.get('result.list.$') // [{ content: '这是第一条记录' }, { content: '这是第二条记录' }]
db.get('result.list.$.content') // ['这是第一条记录', '这是第二条记录']

数据处理

import DataAdapter from 'zw-data-adapter';

const originData = {
  result: {
    name: 'zw',
    time: '2021/2/10',
    title: '标题',
    state: '0',
    list: [
      { content: '这是第一条记录' }
      { content: '这是第二条记录' }
    ]
  }
}

const db = DataAdapter(originData);

typeof db.get('result.state') // string
typeof db.get('result.state|number')  // number

db.get('result.list.$.content') // ['这是第一条记录', '这是第二条记录']
db.get('result.list|reverse.$.content') // ['这是第二条记录', '这是第一条记录']

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 1.0.0
    0
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 1.0.0
    0

Package Sidebar

Install

npm i zw-simple-data

Weekly Downloads

0

Version

1.0.0

License

ISC

Unpacked Size

29 kB

Total Files

16

Last publish

Collaborators

  • white_g