美文网首页
路由模块化

路由模块化

作者: Wrestle_Mania | 来源:发表于2019-11-30 23:07 被阅读0次
  • app.js
const Koa = require("koa"),
  views = require("koa-views"),
  path = require("path"),
  render = require("koa-art-template"),
  router = require("koa-router")();

const admin = require("./router/admin"),
  home = require("./router/home");

const app = new Koa();

render(app, {
  root: path.join(__dirname, "views"),
  extname: ".html",
  debug: true
});

router.use(home);
router.use("/admin", admin);

app.use(router.routes()).use(router.allowedMethods());

app.listen(8080);
  • router/home/index.js
const router = require("koa-router")();

router.get("/", async ctx => {
  ctx.body = "home";
});

router.get("/news", async ctx => {
  ctx.body = "news";
});

module.exports = router.routes();
  • router/admin/index.js
const router = require("koa-router")();

router.get("/", async ctx => {
  ctx.body = "admin";
});

router.get("/user", async ctx => {
  ctx.body = "user";
});

router.get("/list", async ctx => {
  ctx.body = "list";
});

module.exports = router.routes();


模块细分

  • router/admin/index.js
const router = require("koa-router")();

const list = require("./list"),
  user = require("./user");

router.get("/", async ctx => {
  ctx.body = "admin";
});

router.use("/list", list);
router.use("/user", user);

module.exports = router.routes();
  • router/admin/list.js
const router = require("koa-router")();

router.get("/", async ctx => {
  ctx.body = "list";
});

router.get("/add", async ctx => {
  ctx.body = "list-add";
});

router.get("/update", async ctx => {
  ctx.body = "list-update";
});

module.exports = router.routes();
  • router/admin/user.js
const router = require("koa-router")();

router.get("/", async ctx => {
  ctx.body = "user";
});

router.get("/add", async ctx => {
  ctx.body = "user-add";
});

router.get("/update", async ctx => {
  ctx.body = "user-update";
});

module.exports = router.routes();

  • 配合art-template
const router = require("koa-router")();

router.get("/", async ctx => {
  await ctx.render("admin/user/index");
});

router.get("/add", async ctx => {
  await ctx.render("admin/user/add");
});

router.get("/update", async ctx => {
  await ctx.render("admin/user/update");
});

module.exports = router.routes();

相关文章

  • 阿里ARouter路由实现模块化开发流程

    阿里ARouter路由实现模块化开发流程(一)阿里ARouter路由实现模块化开发流程(二)

  • vue项目基建

    路由模块化 , 高频全局组件模块化 权限

  • koa2.x学习3

    Koa 应用生成器以及 Koa 路由模块化 Koa 应用生成器Koa 搭建模块化路由/层级路由 Koa 应用生成器...

  • react路由模块化和路由嵌套

    路由模块化的好处我就不多说了,先看下我的项目页面 开始拆分路由 定义根路由,根路由将引入子路由 在app.vue中...

  • 3.路由

    1,路由前缀router.prefix('/users') 这样就可以方便的模块化的管理路由了 2,路由请求及返回格式

  • Module 2 Module

    Android模块化开发小demo 内置Android路由, 支持注解设置路由 如果你只想使用内置的Android...

  • 2018-09-24路由

    首先明白路由是什么? 路由是vue里面的一个核心插件 路由的作用是什么? 嵌套的路由/视图表模块化的、基于组件的路...

  • vue笔记9.24

    首先明白路由是什么? 路由是vue里面的一个核心插件 路由的作用是什么? 嵌套的路由/视图表模块化的、基于组件的路...

  • vue-router

    一 :安装方式 a:CDN引入或者直接下载 b:npm安装 模块化工程 二:路由运作方式 a:使用路由 b:定义路...

  • 路由模块化

    app.js router/home/index.js router/admin/index.js 模块细分 ro...

网友评论

      本文标题:路由模块化

      本文链接:https://www.haomeiwen.com/subject/mrvawctx.html