import Mock from 'mockjs'; import qs from 'query-string'; import dayjs from 'dayjs'; import { GetParams } from '@/types/global'; import setupMock, { successResponseWrap } from '@/utils/setup-mock'; const textList = [ { key: 1, clickNumber: '346.3w+', title: '经济日报:财政政策要精准提升…', increases: 35, }, { key: 2, clickNumber: '324.2w+', title: '双12遇冷,消费者厌倦了电商平…', increases: 22, }, { key: 3, clickNumber: '318.9w+', title: '致敬坚守战“疫”一线的社区工作…', increases: 9, }, { key: 4, clickNumber: '257.9w+', title: '普高还是职高?家长们陷入选择…', increases: 17, }, { key: 5, clickNumber: '124.2w+', title: '人民快评:没想到“浓眉大眼”的…', increases: 37, }, ]; const imageList = [ { key: 1, clickNumber: '15.3w+', title: '杨涛接替陆慷出任外交部美大司…', increases: 15, }, { key: 2, clickNumber: '12.2w+', title: '图集:龙卷风袭击美国多州房屋…', increases: 26, }, { key: 3, clickNumber: '18.9w+', title: '52岁大姐贴钱照顾自闭症儿童八…', increases: 9, }, { key: 4, clickNumber: '7.9w+', title: '杭州一家三口公园宿营取暖中毒', increases: 0, }, { key: 5, clickNumber: '5.2w+', title: '派出所副所长威胁市民?警方调…', increases: 4, }, ]; const videoList = [ { key: 1, clickNumber: '367.6w+', title: '这是今日10点的南京', increases: 5, }, { key: 2, clickNumber: '352.2w+', title: '立陶宛不断挑衅致经济受损民众…', increases: 17, }, { key: 3, clickNumber: '348.9w+', title: '韩国艺人刘在石确诊新冠', increases: 30, }, { key: 4, clickNumber: '346.3w+', title: '关于北京冬奥会,文在寅表态', increases: 12, }, { key: 5, clickNumber: '271.2w+', title: '95后现役军人荣立一等功', increases: 2, }, ]; setupMock({ setup() { Mock.mock(new RegExp('/api/content-data'), () => { const presetData = [58, 81, 53, 90, 64, 88, 49, 79]; const getLineData = () => { const count = 8; return new Array(count).fill(0).map((el, idx) => ({ x: dayjs() .day(idx - 2) .format('YYYY-MM-DD'), y: presetData[idx], })); }; return successResponseWrap([...getLineData()]); }); Mock.mock(new RegExp('/api/popular/list'), (params: GetParams) => { const { type = 'text' } = qs.parseUrl(params.url).query; if (type === 'image') { return successResponseWrap([...videoList]); } if (type === 'video') { return successResponseWrap([...imageList]); } return successResponseWrap([...textList]); }); }, });