123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153 |
- import axios from 'axios';
- import MockAdapter from 'axios-mock-adapter';
- import { LoginUsers, Users } from './data/user';
- let _Users = Users;
- export default {
- /**
- * mock bootstrap
- */
- bootstrap() {
- let mock = new MockAdapter(axios);
- // mock success request
- mock.onGet('/success').reply(200, {
- msg: 'success'
- });
- // mock error request
- mock.onGet('/error').reply(500, {
- msg: 'failure'
- });
- //登录
- mock.onPost('/login').reply(config => {
- let {username, password} = JSON.parse(config.data);
- return new Promise((resolve, reject) => {
- let user = null;
- setTimeout(() => {
- let hasUser = LoginUsers.some(u => {
- if (u.username === username && u.password === password) {
- user = JSON.parse(JSON.stringify(u));
- user.password = undefined;
- return true;
- }
- });
- if (hasUser) {
- resolve([200, { code: 200, msg: '请求成功', user }]);
- } else {
- resolve([200, { code: 500, msg: '账号或密码错误' }]);
- }
- }, 1000);
- });
- });
- //获取用户列表
- mock.onGet('/user/list').reply(config => {
- let {name} = config.params;
- let mockUsers = _Users.filter(user => {
- if (name && user.name.indexOf(name) == -1) return false;
- return true;
- });
- return new Promise((resolve, reject) => {
- setTimeout(() => {
- resolve([200, {
- users: mockUsers
- }]);
- }, 1000);
- });
- });
- //获取用户列表(分页)
- mock.onGet('/user/listpage').reply(config => {
- let {page, name} = config.params;
- let mockUsers = _Users.filter(user => {
- if (name && user.name.indexOf(name) == -1) return false;
- return true;
- });
- let total = mockUsers.length;
- mockUsers = mockUsers.filter((u, index) => index < 20 * page && index >= 20 * (page - 1));
- return new Promise((resolve, reject) => {
- setTimeout(() => {
- resolve([200, {
- total: total,
- users: mockUsers
- }]);
- }, 1000);
- });
- });
- //删除用户
- mock.onGet('/user/remove').reply(config => {
- let { id } = config.params;
- _Users = _Users.filter(u => u.id !== id);
- return new Promise((resolve, reject) => {
- setTimeout(() => {
- resolve([200, {
- code: 200,
- msg: '删除成功'
- }]);
- }, 500);
- });
- });
- //批量删除用户
- mock.onGet('/user/batchremove').reply(config => {
- let { ids } = config.params;
- ids = ids.split(',');
- _Users = _Users.filter(u => !ids.includes(u.id));
- return new Promise((resolve, reject) => {
- setTimeout(() => {
- resolve([200, {
- code: 200,
- msg: '删除成功'
- }]);
- }, 500);
- });
- });
- //编辑用户
- mock.onGet('/user/edit').reply(config => {
- let { id, name, addr, age, birth, sex } = config.params;
- _Users.some(u => {
- if (u.id === id) {
- u.name = name;
- u.addr = addr;
- u.age = age;
- u.birth = birth;
- u.sex = sex;
- return true;
- }
- });
- return new Promise((resolve, reject) => {
- setTimeout(() => {
- resolve([200, {
- code: 200,
- msg: '编辑成功'
- }]);
- }, 500);
- });
- });
- //新增用户
- mock.onGet('/user/add').reply(config => {
- let { name, addr, age, birth, sex } = config.params;
- _Users.push({
- name: name,
- addr: addr,
- age: age,
- birth: birth,
- sex: sex
- });
- return new Promise((resolve, reject) => {
- setTimeout(() => {
- resolve([200, {
- code: 200,
- msg: '新增成功'
- }]);
- }, 500);
- });
- });
- }
- };
|