zoukankan      html  css  js  c++  java
  • node.js 框架express有关于router的运用

    1、express 路由入门

    const express = require('express');
    let server = express();
    server.listen(8087);
    //用户界面
    let user_router = express.Router();
    server.use('/user', user_router);
    user_router.get('/', (req, res) => {
        res.send('这个是用户界面的根目录');
        res.end();
    })
    user_router.get('/login', (req, res) => {
        res.send('这个是用户的登录界面');
        res.end();
    })
    user_router.get('/register', (req, res) => {
        res.send('这个是用户的注册界面');
    })
    
    //子路由下还可以嵌套路由,注意实例化出来的类
    let vip_router = express.Router();
    user_router.use('/vip', vip_router);
    vip_router.get('/', (req, res) => {
        res.send('这个是vip的根目录');
    })
    vip_router.get('/login', (req, res) => {
        res.send('这个是VIP的登录界面');
        res.end();
    })
    
    //列表界面
    let list_router = express.Router();
    server.use('/list', list_router);
    list_router.get('/', (req, res) => {
        res.send('这个是列表的根目录');
        res.end();
    })
    list_router.get('/main', (req, res) => {
        res.send('这个是列表展示的主页');
        res.end();
    })

     2、为了更好的进行模块化管理,可以把代码进行分割

     a、在主服务目录下

    const express = require('express');
    let server = express();
    server.listen(8087);
    //用户界面,引进模块,如果引进的是一个路径,那么默认访问的是这个目录下的index.js文件
    server.use('/user', require('./parts/user'));
    //列表界面,引进模块
    server.use('/list', require('./parts/list'));

    b、创建parts(根据自己的具体情况设置目录),并且在parts下设置三个文件user.js,list.js,vip.js;

    对应的user.js的布局如下

    const express = require('express');
    let user_router = express.Router();
    user_router.get('/', (req, res) => {
        res.send('这个是用户界面的根目录');
        res.end();
    })
    user_router.get('/login', (req, res) => {
        res.send('这个是用户的登录界面');
        res.end();
    })
    user_router.get('/register', (req, res) => {
        res.send('这个是用户的注册界面');
    })
    
    //引入子模块
    user_router.use('/vip', require('./vip'));
    
    //输出模块
    module.exports = user_router;

    对应的子目录vip.js的布局

    const express = require('express');
    let vip_router = express.Router();
    vip_router.get('/', (req, res) => {
        res.send('这个是vip的根目录');
        res.end();
    })
    vip_router.get('/login', (req, res) => {
        res.send('这个是vip的登录');
        res.end();
    })
    
    module.exports = vip_router;

    对应的list.js的布局

    let express = require('express');
    let list_router = express.Router();
    list_router.get('/', (req, res) => {
        res.send('这个是列表的根目录');
        res.end();
    })
    list_router.get('/main', (req, res) => {
        res.send('这个是列表展示的主页');
        res.end();
    })
    
    //输出模块
    module.exports = list_router;
  • 相关阅读:
    使用javap分析Java的字符串操作
    使用javap深入理解Java整型常量和整型变量的区别
    分享一个WebGL开发的网站-用JavaScript + WebGL开发3D模型
    Java动态代理之InvocationHandler最简单的入门教程
    Java实现 LeetCode 542 01 矩阵(暴力大法,正反便利)
    Java实现 LeetCode 542 01 矩阵(暴力大法,正反便利)
    Java实现 LeetCode 542 01 矩阵(暴力大法,正反便利)
    Java实现 LeetCode 541 反转字符串 II(暴力大法)
    Java实现 LeetCode 541 反转字符串 II(暴力大法)
    Java实现 LeetCode 541 反转字符串 II(暴力大法)
  • 原文地址:https://www.cnblogs.com/rickyctbu/p/9685576.html
Copyright © 2011-2022 走看看