第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

【學(xué)習(xí)打卡】第3天 封裝通用工具函數(shù)

標(biāo)簽:
Node.js 架構(gòu)

课程名称Vue3+ElementPlus+Koa2 全栈开发后台系统

课程章节: 第3章 Koa架构设计

主讲老师:河畔一角

课程内容:

今天学习的内容包括:封装后端程序中一些通用的工具函数,包括响应数据的封装,分页查询函数的封装。

课程收获:

1.状态码的封装

针对每个请求,服务端可能会有不同的处理结果,比如请求得到了成功处理,可以通过200表示成功,比如用户名和密码有误,可以通过10001表示。

在项目中要把这些状态码集中管理,方便实用和维护。将它们封装到 utils/index.js 文件中:

const CODE  = {
    SUCCESS: 200,
    PARAM_ERROR: 10001, // 参数错误
    USER_ACCOUNT_ERROR: 20001, // 账号或密码错误
    USER_LOGIN_ERROR: 30001, // 用户未登录
    BUSINESS_ERROR: 40001, // 业务请求失败
    AUTH_ERROR: 500001 // 认证失败或TOKEN过期
}

2.响应方法的封装

Koa.js 中向浏览器响应接口数据的方法是使用 res.body

router.get('/api/users', async ctx => {
    // ...
    ctx.body = {
        code: 0
        msg: 'ok',
        data: {}
    }
})

如果每个路由都要重复写这些内容,就有些代码冗余了。所以可以封装两个方法,分别处理成功的响应和失败的响应:

const log4js = require('./log4js')

module.exports = {
    success(data='', msg='', code=CODE.SUCCESS){
        log4js.debug(data);
        return {
            code,
            data,
            msg
        }
    },

     fail(msg='', code=CODE.BUSINESS_ERROR, data=''){
       log4js.debug(msg);
        return {
            code,
            data,
            msg
        }
      }
}

这样,在路由处理中,可以直接:

router.get('/api/users', async ctx => {
    // 成功
    ctx.body = utils.success(data, 'ok')
    // 失败
    ctx.body = utils.fail('error')
})

3.分页插叙方法的封装

分页查询是一种常见的需求,基本上每个项目都会用到。它主要通过用户传来的 pageNum 页码和 pageSize 条数来控制如何进行查询。

module.exports = {
    pager({pageNum=1,pageSize=10}){
        // 默认查询第一页,每页查询 10 条数据
        pageNum*=1;
        pageSize*=1;
        // 分页的条件:根据要查的页码和每页数据的数量进行过滤
        const skipIndex = (pageNum-1)*pageSize;
        return {
            page:{
                pageNum,
                pageSize
            },
            skipIndex
        }
    }
}

图片描述

點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評論
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊有機(jī)會得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消