0.8.1 • Published 1 year ago

data-model-service v0.8.1

Weekly downloads
6
License
MIT
Repository
github
Last release
1 year ago

data-model-service


数据模型服务:主要解耦前后端数据交互出现的问题:

  • 如果后端接口传递的数据嵌套很多层,前端在使用时会出现很多防御性代码;

例如,后端接口数据:

{
    user: {
        friends: [
            {
                name: '小明',
                age: 12
            }
        ]
    }
}

前端在请求接口拿到数据后:

const data = {
    user: {
        friends: [
            {
                name: '小明',
                age: 12
            }
        ]
    }
}
// 获取第一个好友的姓名:
const friendName = data.user.friends[0].name;

上述例子存在以下几个问题:

  1. 链式调用很长难以理解
  2. 要书写很多防御性代码
  3. 链式调用需要保证每个环节必须有值,否则会抛出异常。如果friends为空数组,那么data.user.friends[0]的值就是undefined,此时如果没有防御性代码,取name值就会报错,导致之后的代码无法运行
  • 解决空数据使用默认值

使用案例

import DataModel from 'data-model-service';

const userDataIns = new DataModel(userModel);

const originData = {
      names: {
        friends: ['张三', '王五', '李四']
      },
      age: 12,
    }
};

const userData = userDataIns.parse(originData);

// userData的值为:
{
 name: {
   friend1: '张三',
 },
 age: '12',
}

使用文档

点击查看

0.8.1

1 year ago

0.8.0

1 year ago

0.7.0

2 years ago

0.6.2

3 years ago

0.6.1

3 years ago

0.6.0

3 years ago

0.5.4

3 years ago

0.5.5

3 years ago

0.5.3

3 years ago

0.5.0

3 years ago

0.5.2

3 years ago

0.5.1

3 years ago

0.4.0

3 years ago

0.3.1

4 years ago

0.3.0

4 years ago

0.2.0

4 years ago

0.1.1

5 years ago

0.1.0

5 years ago

0.0.11

5 years ago

0.0.10

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.1

5 years ago