当前位置: 主页 > 日常积累 > node >

egg学习心得(进阶篇)

写这篇文章之前,想对自己想说的话:加油,我希望写完这篇文章后,能够对egg.js有深入的了解,更规范的管理好自己的业务层的代码,让自己成为一个高手egg学习心得(进阶篇)

egg路由配置中间件的使用

设置中间件:

//==app/middleware/datetime.js
module.exports = (options,app)=>{
return async function datetimes(ctx, next) {  在这里加一个S,来确保引用的时候,和这里无关
console.log("date",new Date())
await next();
}}

router调用:

//==app/router.js
let datetime = app.middleware.datetime(options,app)// 配置,或者实例
router.get("/date",datetime,controller.date.getDate) //路由配置

egg引用第三方模块规范以gzip模块对页面的优化改进

中间件:

//==app/middleware/gzip.js
module.exports= require("koa-compress");
//剩下类推。。。。

config配置:

//==app/config.js
/*使用中间件*/
config.middleware = [ "gzip"]
//配置优化gzip
config.gzip = {
threshold: 2048,
}

页面查看效果:

添加方法:在控制面板的network的字段栏点击右键,找到Respomse Headers-》Conten-Encoding

egg学习心得(进阶篇)

显示优化前和优化后的大小

egg学习心得(进阶篇)

中间件的通用配置

/*
*pp/config.js
*enable:控制中间件是否开启。
*match:设置只有符合某些规则的请求才会经过这个中间件。
*ignore:设置符合某些规则的请求不经过这个中间件
*/
 match(ctx) {
      // 只有 ios 设备才开启
      const reg = /iphone|ipad|ipod/i;
      return reg.test(ctx.get('user-agent'));
    },


[日志信息]

该日志于 2018-09-18 19:31 由 陈文超 发表在 未知 网站下,你除了可以发表评论外,还可以转载 “egg学习心得(进阶篇)” 日志到你的网站或博客,但是请保留源地址及作者信息,谢谢!!    (尊重他人劳动,你我共同努力)

Copyright © 2015-2018 陈文超博客 保留所有权利 琼ICP备15003229号| 托管于阿里云 · 博客稳定运行 | 网站地图 |

返回顶部