2020-06-22 使用MockJS遇到的问题

2020-06-22  本文已影响0人  想写点文章的jyz

场景:一个接口不同情况下会返回不同的错误码,在已知所有错误码的情况下,期望mock接口每次返回的数据是按顺序生成的,想通过多次请求接口(比如多次点击提交按钮),就可测试不同错误码前端处理业务的逻辑

eg:第一次请求期望errorCode返回101,第二次请求期望errorCode返回102。。。

看了下官方文档,发现有以下定义

5. 属性值是数组 Array

'name|1': array从属性值 array 中随机选取 1 个元素,作为最终值。

'name|+1': array从属性值 array 中顺序选取 1 个元素,作为最终值。

于是突发奇想:想通过该方式实现上述场景需求

const response = Mock.mock({

  'errorCode|+1':['101','102','200']

})

实验了很多次,发现多次请求接口只会取第一值101,败!!!

那么这个规则的使用场景是怎样的呢,如下图,发现批量生成数组该规则会按顺序选取!!!!

所以目前还未找到可以实现上述场景按顺序选取元素,最后采取了Radom.extend随机选取

如果大家还有别的Mock数据方法实现该场景,欢迎留言~~

上一篇下一篇

猜你喜欢

热点阅读