nodejs express 路由与view创建多级目录
一、首先使用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创建多级目录相关推荐
- php创建多级目录完整封装类操作
创建多级目录函数中调用创建指定下的指定文件的函数: public function create_dir($dir,$mode=0777){return is_dir($dir) or ($this- ...
- php 从根目录 开始创建,php创建多级目录的方法
php创建多级目录的方法 本文实例讲述了php创建多级目录的方法.分享给大家供大家参考.具体实现方法如下: /* 写出一个能创建多级目录的PHP函数 */ function createdirlist ...
- php使用mkdir创建多级目录入门例子
来源:http://www.jb51.net/article/49970.htm <?php //echo "hello world"; //echo "y ...
- Linux mkdir 命令创建多级目录
前言 CentOS Linux release 8.2.2004 (Core) 创建多级目录 比如创建目录 /data/a/b/c shell> mkdir /data shell> mk ...
- PHP递归创建多级目录(一道面试题的解题过程)
今天看到一道面试题,要写出一个可以创建多级目录的函数: 我的第一个感觉就是用递归创建,具体思路如下: function Directory($dir){ if(is_dir($dir) || @mkd ...
- 【转】php利用mkdir创建多级目录
先介绍一下 mkdir() 这个函数: mkdir($path,0777,true); 第一个参数:必须,代表要创建的多级目录的路径: 第二个参数:设定目录的权限,默认是 0777,意味着最大可能的访 ...
- php利用mkdir()创建多级目录
先介绍一下 mkdir() 这个函数: mkdir($path,0777,true); 第一个参数:必须,代表要创建的多级目录的路径: 第二个参数:设定目录的权限,默认是 0777,意味着最大可能的访 ...
- qdir 自动创建多级目录_Qt 判断文件或文件夹是否存在及创建文件夹
1. 判断文件夹是不是存在 参数说明: QString fullPath;//文件夹全路径 /*方法1*/ bool isDirExist(QString fullPath) { QDir dir(f ...
- PHP 检查并创建多级目录
<?php //检查并创建多级目录 function checkDir($path){ $pathArray = explode('/',$path); ...
最新文章
- 高并发服务优化篇:从RPC预热转发看服务端性能调优
- Tomcat 与 Resin PK大战
- spider RPC更新至2.0.0-RELEASE
- TCP keepAlive详解(TCP心跳包)
- Hibernate之Session解析
- 手机modem开发(11)---MT6735/35M/53 C2K 6/5/4M 配置
- 探讨PHP 静态变量 静态方法 初始化类的问题 哪种写法合格
- Windows Azure Cloud Service (8) Role及其生命周期模型
- python3第三方模块安装路径_查看python及其第三方库的版本和安装位置
- java rxtx下载_1、下载64位rxtx for java 链接:http://fizzed.com/oss/rxtx-for-java2、下载下来的包解压后按照说明放到JAV...
- Sklearn中的二分类模型可以进行多分类的原理
- 矩阵标准型的系数是特征值吗_高等代数|第五章 二次型二次型及其标准型
- 深入理解C#面向对象之继承
- 算法题6 b站扭蛋机
- 小米6怎样打开位置服务器,小米手环6gps定位功能在哪打开?经常无法定位怎么办...
- 数据挖掘与数据分析(快速入门)
- Netstat常用参数及常用CMD命令总结
- DevOps基础-2.5-持续改善
- 新手程序员编程必不可少的八大工具
- php tip,jQuery tip提示插件详解
热门文章
- 技术向:一文读懂卷积神经网络CNN
- 使用Lex将C/C++文件输出为HTML文件
- GMM、fisher vector、SIFT与HOG特征资料
- 鸟哥的Linux私房菜(基础篇)- 第十一章、认识与学习 BASH
- 《大话数据结构》第9章 排序 9.2 排序的基本概念与分类
- go语言高性能缓存组件ccache分析
- Centos7 配置静态ip地址
- kali 解决Metasploit拿到shell后显示中文乱码问题
- 使用LWA和Lync模拟外部测试无边缘单前端环境
- (转载)把syslog接收的远程日志从/var/log/messages中分开