一、首先使用np 安装express 库

#创建项目目录
mkdir myapp
#进入项目目录
cd myapp
#在该目录创建,并初始化 package.json 文件
npm init
#在当前目录下安装 express 库
npm install express --save

二、使用express 的应用程序生成器

#全局安装应用程序生成器
npm install -g express-generator
#展示express 应用生成器的选项
express -h
#使用express 创建一个使用ejs为模板的项目
express -e  ejsProject

创建后项目目录如下:

项目创建好之后,需要安装依赖

cd ejsTest
npm install

三、启动express 项目路

#Mac下或linux环境下启动
DEBUG=myapp:* npm start#windows下启动
set DEBUG=myapp:* & npm start
或者使用一下方式
set DEBUG=myapp:*
npm start

访问 localhost:3000 ,即可访问:

四、为view 和视图创建字母结构

在route目录下创建 login目录,并创建login.js,添加以下代码:

var express = require('express');
var router = express.Router();/* GET users listing. */
router.get('/', function(req, res, next) {res.send('this is login page');
});router.get('/login', function(req, res, next) {
//前面没有 "/"符号res.render('login/login', { title: 'Express' });
});module.exports = router

在views目录下创建文件夹login,并在该目录下创建login.ejs文件,添加一下代码:

<!DOCTYPE html>
<html><head><title>login</title><link rel='stylesheet' href='/stylesheets/style.css' /></head><body><h1>login page</h1><p>Welcome to login page</p></body>
</html>

在app.js中注册新的路由,添加一下代码:

var loginRouter = require('./routes/login/login');

app.use('/login/login', loginRouter);

添加后如下:

var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');var indexRouter = require('./routes/index');
var usersRouter = require('./routes/users');
//以下是新添加的代码++++++++++++++++++++++++
var loginRouter = require('./routes/login/login');var app = express();// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));app.use('/', indexRouter);
app.use('/users', usersRouter);
//以下是新添加的代码++++++++++++++++++++++++++++
app.use('/login/login', loginRouter);// catch 404 and forward to error handler
app.use(function(req, res, next) {next(createError(404));
});// error handler
app.use(function(err, req, res, next) {// set locals, only providing error in developmentres.locals.message = err.message;res.locals.error = req.app.get('env') === 'development' ? err : {};// render the error pageres.status(err.status || 500);res.render('error');
});module.exports = app;

启动应用访问 :http://localhost:3000/login/login  ,得到如下:

访问:http://localhost:3000/login/login/login  ,得到如下:

到此 express 的多级路由目录完成

nodejs express 路由与view创建多级目录相关推荐

  1. php创建多级目录完整封装类操作

    创建多级目录函数中调用创建指定下的指定文件的函数: public function create_dir($dir,$mode=0777){return is_dir($dir) or ($this- ...

  2. php 从根目录 开始创建,php创建多级目录的方法

    php创建多级目录的方法 本文实例讲述了php创建多级目录的方法.分享给大家供大家参考.具体实现方法如下: /* 写出一个能创建多级目录的PHP函数 */ function createdirlist ...

  3. php使用mkdir创建多级目录入门例子

    来源:http://www.jb51.net/article/49970.htm <?php   //echo "hello world";   //echo "y ...

  4. Linux mkdir 命令创建多级目录

    前言 CentOS Linux release 8.2.2004 (Core) 创建多级目录 比如创建目录 /data/a/b/c shell> mkdir /data shell> mk ...

  5. PHP递归创建多级目录(一道面试题的解题过程)

    今天看到一道面试题,要写出一个可以创建多级目录的函数: 我的第一个感觉就是用递归创建,具体思路如下: function Directory($dir){ if(is_dir($dir) || @mkd ...

  6. 【转】php利用mkdir创建多级目录

    先介绍一下 mkdir() 这个函数: mkdir($path,0777,true); 第一个参数:必须,代表要创建的多级目录的路径: 第二个参数:设定目录的权限,默认是 0777,意味着最大可能的访 ...

  7. php利用mkdir()创建多级目录

    先介绍一下 mkdir() 这个函数: mkdir($path,0777,true); 第一个参数:必须,代表要创建的多级目录的路径: 第二个参数:设定目录的权限,默认是 0777,意味着最大可能的访 ...

  8. qdir 自动创建多级目录_Qt 判断文件或文件夹是否存在及创建文件夹

    1. 判断文件夹是不是存在 参数说明: QString fullPath;//文件夹全路径 /*方法1*/ bool isDirExist(QString fullPath) { QDir dir(f ...

  9. PHP 检查并创建多级目录

    <?php //检查并创建多级目录     function checkDir($path){         $pathArray = explode('/',$path);          ...

最新文章

  1. 高并发服务优化篇:从RPC预热转发看服务端性能调优
  2. Tomcat 与 Resin PK大战
  3. spider RPC更新至2.0.0-RELEASE
  4. TCP keepAlive详解(TCP心跳包)
  5. Hibernate之Session解析
  6. 手机modem开发(11)---MT6735/35M/53 C2K 6/5/4M 配置
  7. 探讨PHP 静态变量 静态方法 初始化类的问题 哪种写法合格
  8. Windows Azure Cloud Service (8) Role及其生命周期模型
  9. python3第三方模块安装路径_查看python及其第三方库的版本和安装位置
  10. java rxtx下载_1、下载64位rxtx for java 链接:http://fizzed.com/oss/rxtx-for-java2、下载下来的包解压后按照说明放到JAV...
  11. Sklearn中的二分类模型可以进行多分类的原理
  12. 矩阵标准型的系数是特征值吗_高等代数|第五章 二次型二次型及其标准型
  13. 深入理解C#面向对象之继承
  14. 算法题6 b站扭蛋机
  15. 小米6怎样打开位置服务器,小米手环6gps定位功能在哪打开?经常无法定位怎么办...
  16. 数据挖掘与数据分析(快速入门)
  17. Netstat常用参数及常用CMD命令总结
  18. DevOps基础-2.5-持续改善
  19. 新手程序员编程必不可少的八大工具
  20. php tip,jQuery tip提示插件详解

热门文章

  1. 技术向:一文读懂卷积神经网络CNN
  2. 使用Lex将C/C++文件输出为HTML文件
  3. GMM、fisher vector、SIFT与HOG特征资料
  4. 鸟哥的Linux私房菜(基础篇)- 第十一章、认识与学习 BASH
  5. 《大话数据结构》第9章 排序 9.2 排序的基本概念与分类
  6. go语言高性能缓存组件ccache分析
  7. Centos7 配置静态ip地址
  8. kali 解决Metasploit拿到shell后显示中文乱码问题
  9. 使用LWA和Lync模拟外部测试无边缘单前端环境
  10. (转载)把syslog接收的远程日志从/var/log/messages中分开