From b520949520d8307fd71994bd22d878385b8cf64a Mon Sep 17 00:00:00 2001
From: taylor <709161610@qq.com>
Date: Wed, 18 Jan 2017 21:39:49 +0800
Subject: [PATCH] add mockjs
---
src/api/api.js | 12 +-
src/mock/mock.js | 85 +++++++-
src/mockdata/user.js | 3 +-
src/pages/Login.vue | 27 ++-
src/pages/nav1/Table.vue | 421 ++++++++++++++++++---------------------
src/pages/nav1/user.vue | 7 +-
6 files changed, 310 insertions(+), 245 deletions(-)
diff --git a/src/api/api.js b/src/api/api.js
index 13afce3..5d2e1aa 100644
--- a/src/api/api.js
+++ b/src/api/api.js
@@ -2,6 +2,14 @@ import axios from 'axios';
let base = '';
-export const requestLogin = params => { return axios.post(`${ base }/login`, params).then(res => res.data); };
+export const requestLogin = params => { return axios.post(`${base}/login`, params).then(res => res.data); };
-export const getUserList = params => { return axios.get(`${ base }/user/list`, {params: params}); };
\ No newline at end of file
+export const getUserList = params => { return axios.get(`${base}/user/list`, { params: params }); };
+
+export const getUserListPage = params => { return axios.get(`${base}/user/listpage`, { params: params }); };
+
+export const removeUser = params => { return axios.get(`${base}/user/remove`, { params: params }); };
+
+export const editUser = params => { return axios.get(`${base}/user/edit`, { params: params }); };
+
+export const addUser = params => { return axios.get(`${base}/user/add`, { params: params }); };
\ No newline at end of file
diff --git a/src/mock/mock.js b/src/mock/mock.js
index f94d415..a134b50 100644
--- a/src/mock/mock.js
+++ b/src/mock/mock.js
@@ -1,6 +1,7 @@
import axios from 'axios';
import MockAdapter from 'axios-mock-adapter';
import { LoginUsers, Users } from '../mockdata/user';
+let _Users = Users;
export default {
/**
@@ -19,6 +20,7 @@ export default {
msg: 'failure'
});
+ //登录
mock.onPost('/login').reply(config => {
let {username, password} = JSON.parse(config.data);
return new Promise((resolve, reject) => {
@@ -33,17 +35,18 @@ export default {
});
if (hasUser) {
- resolve([200, { code: 200, msg: '请求成功!!!', user }]);
+ resolve([200, { code: 200, msg: '请求成功', user }]);
} else {
- resolve([200, { code: 500, msg: '用户名或密码错误!!!' }]);
+ resolve([200, { code: 500, msg: '账号或密码错误' }]);
}
}, 500);
});
});
+ //获取用户列表
mock.onGet('/user/list').reply(config => {
let {name} = config.params;
- let mockUsers = Users.filter(user => {
+ let mockUsers = _Users.filter(user => {
if (name && user.name.indexOf(name) == -1) return false;
return true;
});
@@ -56,5 +59,81 @@ export default {
});
});
+ //获取用户列表(分页)
+ 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
+ }]);
+ }, 500);
+ });
+ });
+
+ //删除用户
+ 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/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);
+ });
+ });
+
}
};
\ No newline at end of file
diff --git a/src/mockdata/user.js b/src/mockdata/user.js
index 0d613b6..68bdf24 100644
--- a/src/mockdata/user.js
+++ b/src/mockdata/user.js
@@ -9,9 +9,8 @@ const LoginUsers = [
];
const Users = [];
-const userCount = 8;
-for (let i = 0; i < userCount; i++) {
+for (let i = 0; i < 86; i++) {
Users.push(Mock.mock({
id: Mock.Random.guid(),
name: Mock.Random.cname(),
diff --git a/src/pages/Login.vue b/src/pages/Login.vue
index 1e6c2b6..d40d881 100644
--- a/src/pages/Login.vue
+++ b/src/pages/Login.vue
@@ -8,15 +8,16 @@
记住密码
-
- 登录
-
-
-
+
+登录
+
+
+