Egg.js 控制器基类 BaseController、控制器兼容写法
在app/core/base.js
'use strict'; const Controller = require('egg').Controller; class BaseController extends Controller { async getUserInfo() { return{ name:'张三', age:20 } } async success(redirectUrl){ await this.ctx.render('public/success',{ redirectUrl:redirectUrl||'/' }); } async error(redirectUrl){ await this.ctx.render('public/error',{ redirectUrl:redirectUrl||'/' }); } notFound(msg) { msg = msg || 'not found'; this.ctx.throw(404, msg); } } module.exports = BaseController;
继承基类:
'use strict'; const BaseController = require('../core/base.js'); class UserController extends BaseController { async login() { await this.ctx.render('login'); } async register() { await this.ctx.render('register'); } async doLogin() { console.log(this.ctx.request.body); //注意 await await this.success('/login'); } async doRegister() { console.log(this.ctx.request.body); await this.error('/register'); } } module.exports = UserController;
最后,关注【码上加油站】微信公众号后,有疑惑有问题想加油的小伙伴可以码上加入社群,让我们一起码上加油吧!!!
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· ASP.NET Core 模型验证消息的本地化新姿势
· 对象命名为何需要避免'-er'和'-or'后缀
· SQL Server如何跟踪自动统计信息更新?
· AI与.NET技术实操系列:使用Catalyst进行自然语言处理
· 分享一个我遇到过的“量子力学”级别的BUG。
· C# 中比较实用的关键字,基础高频面试题!
· 为什么AI教师难以实现
· 如何让低于1B参数的小型语言模型实现 100% 的准确率
· AI Agent爆火后,MCP协议为什么如此重要!
· 【译】Visual Studio(v17.13)中新的调试和分析特性
2017-06-16 防微信左滑删除的效果