0.8.1 • Published 2 years ago

data-model-service v0.8.1

Weekly downloads
6
License
MIT
Repository
github
Last release
2 years 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

2 years ago

0.8.0

2 years ago

0.7.0

3 years ago

0.6.2

4 years ago

0.6.1

4 years ago

0.6.0

4 years ago

0.5.4

4 years ago

0.5.5

4 years ago

0.5.3

5 years ago

0.5.0

5 years ago

0.5.2

5 years ago

0.5.1

5 years ago

0.4.0

5 years ago

0.3.1

5 years ago

0.3.0

5 years ago

0.2.0

5 years ago

0.1.1

6 years ago

0.1.0

6 years ago

0.0.11

6 years ago

0.0.10

6 years ago

0.0.9

6 years ago

0.0.8

6 years ago

0.0.7

6 years ago

0.0.6

6 years ago

0.0.5

6 years ago

0.0.1

6 years ago