您好,登錄后才能下訂單哦!
這篇文章主要介紹“Vue+Mockjs模擬curd接口請求怎么實現”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Vue+Mockjs模擬curd接口請求怎么實現”文章能幫助大家解決問題。
在前后端分離的項目中常常會遇到當前端頁面開發完成
但是后端接口還沒好,暫不支持聯調的情況下,一般我們會用到mock數據
這邊簡單說一下最常見且經常會遇到的curd接口模擬
注:這邊可以和后端先約定好接口路徑以及入參返參的字段,避免二次修改
1.安裝依賴,新建js文件,在文件中導入mock.js,模擬列表數據
yarn add mockjs const Mock = require("mockjs") const list = [] const length = 18 for (let i = 0; i < length; i++) { list.push( Mock.mock({ id: '@id', account: '@first', name: '@name', email: '@email', mobile: '@phone', sex: '@integer(0,1)', type: "@integer(100,101)", status: "@integer(0,1)", }) ) }
2.查詢列表接口模擬
{ url: "/user/getPageList", type: "post", response: config => { // 拿到入參 const { name, account, status, type, pageNum, pageSize, } = config.body; // 做一些查詢條件的處理 const mockData = list.filter(item => { if (name && item.name.indexOf(name) < 0) return false if (account && item.account.toString() !== account) return false if (status && item.status.toString() !== status) return false if (type && item.type.toString() !== type) return false return true }) // 模擬分頁 const pageList = mockData.slice((pageNum - 1) * pageSize, pageNum * pageSize) // 返回數據 return { resultCode: "1", messageCode: null, message: null, data: { list: pageList, total: mockData.length } }; } },
3.刪除功能接口模擬
{ url: "/user/removeRow", type: "post", response: config => { const { id } = config.body // 根據id找到需要刪除的元素索引 const index = list.findIndex(item => item.id === id) // 調用splice刪除 list.splice(index, 1) return { resultCode: "1", messageCode: null, message: null, data: 'success' } } },
4.保存及編輯接口模擬
{ url: "/user/saveForm", type: "post", response: config => { const { id } = config.body if (id) { // 關鍵在于id,其他入參不多贅述,格局id找到那條數據調用splice替換 const index = list.findIndex(item => item.id === id) list.splice(index, 1, config.body) } else { // 如果id不存在則在列表添加一條數據 list.unshift( Mock.mock({ id: '@id', ...config.body }) ) } return { resultCode: "1", messageCode: null, message: null, data: 'success' } } },
所有接口使用module.exports導出后,在調用時就會執行mock的接口
關于“Vue+Mockjs模擬curd接口請求怎么實現”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。