中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Vue+Mockjs模擬curd接口請求怎么實現

發布時間:2022-07-12 09:23:13 來源:億速云 閱讀:168 作者:iii 欄目:開發技術

這篇文章主要介紹“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接口請求怎么實現”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

陈巴尔虎旗| 临武县| 绥中县| 平凉市| 安阳县| 巴彦淖尔市| 集安市| 阜城县| 改则县| 革吉县| 克拉玛依市| 新干县| 亚东县| 安平县| 铜梁县| 盐池县| 定襄县| 南城县| 平塘县| 汽车| 德安县| 汕尾市| 青海省| 民丰县| 临江市| 页游| 鸡泽县| 天长市| 泊头市| 兰坪| 巴中市| 鹤山市| 射阳县| 天水市| 凤山市| 留坝县| 慈溪市| 雅江县| 平谷区| 新丰县| 石泉县|