首页 > 其他分享 >egg.js 24.3-24.5router路由相关

egg.js 24.3-24.5router路由相关

时间:2022-10-14 16:00:38浏览次数:51  
标签:exports admin 24.5 app posts 24.3 controller router


编写路由

基础用法

// router.js
router.get('/admin/:id', controller.admin.index);

// controller
async index() {
const { ctx } = this;
// 获取路由get传值参数(路由:id)
ctx.params;
// 获取url的问号get传值参数
ctx.query;
}

资源路由

// app/router.js
module.exports = app => {
const { router, controller } = app;
router.resources('posts', '/api/posts', controller.posts);
// app/controller/v1/users.js
router.resources('users', '/api/v1/users', controller.v1.users);
};

上面代码就在 ​​/posts​​​ 路径上部署了一组 CRUD 路径结构,对应的 Controller 为 ​​app/controller/posts.js​​​ 接下来, 你只需要在 ​​posts.js​​ 里面实现对应的函数就可以了。

Method

Path

Route Name

Controller.Action

GET

/posts

posts

app.controllers.posts.index

GET

/posts/new

new_post

app.controllers.posts.new

GET

/posts/:id

post

app.controllers.posts.show

GET

/posts/:id/edit

edit_post

app.controllers.posts.edit

POST

/posts

posts

app.controllers.posts.create

PUT

/posts/:id

post

app.controllers.posts.update

DELETE

/posts/:id

post

app.controllers.posts.destroy

// app/controller/posts.js

// 列表页
exports.index = async () => {};
// 新增表单页
exports.new = async () => {};
// 新增逻辑
exports.create = async () => {};
// 详情页
exports.show = async () => {};
// 编辑表单页
exports.edit = async () => {};
// 更新逻辑
exports.update = async () => {};
// 删除逻辑
exports.destroy = async () => {};

路由分组

// app/router.js
module.exports = app => {
require('./router/news')(app);
require('./router/admin')(app);
};

// app/router/news.js
module.exports = app => {
app.router.get('/news/list', app.controller.news.list);
app.router.get('/news/detail', app.controller.news.detail);
};

// app/router/admin.js
module.exports = app => {
app.router.get('/admin/user', app.controller.admin.user);
app.router.get('/admin/log', app.controller.admin.log);
};


标签:exports,admin,24.5,app,posts,24.3,controller,router
From: https://blog.51cto.com/u_15565664/5757145

相关文章

  • React Router初识
    相关网址:​​官方地址​​​​ReactRouter中文文档​​​​React-Router入门教程​​​​简书:ReactRouter教程​​​​阮一峰教程​​​​GitHub地址​​ReactRouter是......
  • 实现简单的vue-router
    1.使用vue-cli创建一个配置Router,且是history模式的项目,可以看到使用vue-router的相关代码://route-demo/src/router/index.jsimportVuefrom'vue'importVueRouterf......
  • vue-router_学习笔记
    1.动态导入路由模块import{createRouter,createWebHashHistory,RouteRecordRaw}from"vue-router";//*导入所有routerconstmetaRouters=import.meta.glob(......
  • vue-router:history和hash的区别
    前言:写这个随笔是因为后端部署时,第一次进入页面无问题,刷新后页面空白,寻找原因发现有两个解决方案;1、后端nginx做保底映射,映射到正确的路径;2、前端更改为hash模式也可解决......
  • uni-simple-router使用
    一.安装路由:npminstalluni-simple-routernpminstalluni-read-pages 二.配置路由:1.根目录新建router.js://router.jsimport{RouterMount,createRouter}from......
  • 说说React-Router底层实现?-面试进阶
    React-Router基本了解对于React-Router是针对React定义的路由库,用于将URL和component进行匹配。React-Router源码分析简单前端路由的实现<!DOCTYPEhtml><htmllang="......
  • graylog OutputRouter 简单说明
    OutputRouter核心是基于stream以及消息获取到实际消息的外部输出,方便后续的存储以及处理,实现上依赖了OutputRegistry存储了MessageOutput与Stream的关系,可以用来方便的......
  • HashRouter 和 HistoryRouter
    vue-router是vue官方提供的路由管理器,让构建单页面更容易,vue默认hash模式,还有另一种history模式原理:hash路由:核心就是依靠hashchange()事件在window监听hash的变化,......
  • graylog OutputRouter 简单说明
    OutputRouter核心是基于stream以及消息获取到实际消息的外部输出,方便后续的存储以及处理,实现上依赖了OutputRegistry存储了MessageOutput与Stream的关系,可以用来方便......
  • vue3+vant+vue-router+axios+pinia+vite框架搭建
    vue3的官网地址:https://cn.vuejs.org/;这里要说一下,vue3不支持IE11,如果要兼容IE11及其一下,不建议使用vue3。创建vue脚手架,如果你需要使用ts,则需要node版本>=16。本文按照......