阅读 175

Egg 项目目录与控制器

目录结构

主要关注 appconfigtets即可

egg-project ├─ .autod.conf.js ├─ .eslintignore ├─ .eslintrc ├─ .github │  └─ workflows │     └─ nodejs.yml ├─ .gitignore ├─ .travis.yml ├─ app // 主要工作目录类似 vue中共的src │  ├─ controller // 控制器 用于解析用户的输入,处理后返回相应的结果 │  │  └─ home.js │  ├─ public // 用于放置静态资源,可选 │  └─ router.js //用于配置 URL 路由规则 ├─ appveyor.yml ├─ config // 配置目录 │  ├─ config.default.js // 用于编写配置文件 │  └─ plugin.js // 用于配置需要加载的插件 ├─ jsconfig.json ├─ package.json ├─ README.md └─ test // 用于单元测试    └─ app       └─ controller          └─ home.test.js 复制代码

新建页面

  • app/controller/home.jsindex结束后,添加如下代码

    async vience() {   const { ctx } = this;   ctx.body = '<p> this is a new page </p>'; } 复制代码

  • app/router.js 中第8行后面配置上面方法的路由地址

    router.get('/vience', controller.home.vience); 复制代码

  • 效果

    newpage

Controller 控制器

  • Router 主要用来描述请求 URL 和具体承担执行动作的 Controller 的对应关系, 框架约定了 app/router.js 文件用于统一所有路由规则。

  • 代码编写

    app/controller 下新建 product.js文件

    const Controller = require('egg').Controller; class PorductController extends Controller {   async index() {     const { ctx } = this;     ctx.body = 'product page';   } } module.exports = PorductController; 复制代码

    app/router.js 中添加

    router.get('/product', controller.product.index); 复制代码

product


作者:tangxd3
链接:https://juejin.cn/post/7020205909385150500


文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐