Node.js 之 express 入门 ejs include公共部分
1. 直接进入express安装
因为之前有一篇文章我已经讲过怎么安装node了 而网上的教程也是非常多。所有直接进入到express。教程简陋 由于我比较笨 所有只要写到我自己明白就行。
这里有个教程(http://blog.csdn.net/dai_jing/article/details/38087443)
对了 安装好node之后要记得在环境变量下面设置一下。(windows)
首先全局安装express。

之后检测一下是否安装成功 express -V 大写的V.

如果安装不成功 报错。因为原来express已经把命令行工具单独分离出来了 需要单独安装
cnpm install -g express-generator
1. 第二步 安装好之后 开始本地安装依赖
切换到当前项目目录 安装依赖
cnpm install express --save
安装成功后 会在目录下面安装好node_module 里面有express模块

接下来 运行 express -e hello(项目名称) 自动创建一系列文件
应该是express -e microblog(-e就是ejs模板)

接下来进入到hello里面 cd hello输入
$ cnpm install -i
现在开始自动安装需要的模块。
在 执行 cnpm start 执行npm start其实是执行package.json中的script对应的对象中的start属性所对应的命令行,

所以其实如果吧package.json中的start改成monkindey或者其他字符串,然后你在linux命令行敲上npm monkindey/或者其他,程序照样会运行
其实package.json就是一个配置文件,只是我们之前用的xml格式,但是在nodejs用的是json可以,简单容易理解。从package.json我们可以看出来npm start其实执行的是./bin/www里面是创建一个服务器然后监听3000端口,所以我们可以在浏览器中通过输入"localhost:3000"来访问应用程序。

成功配置好;
. 怎么使用ejs呢
首先在views目录下相当于你的视图。这里创建你要的公共模块 html等等
比如我创建了两个一个footer.ejs 和一个 header.ejs表示公共部分的头和尾 然后不同的模块只要引入头和尾就可以

再去路由下面修改一下配置routes/index.js

这里获取homepage 默认相当于 http://127.0.0.1:3000的url。我自己修改成了/views目录下面的index.html 当然系统会根据我们的配置直接去找views目录下面的index.html
当然怎么知道找到index.html 而不是index.ejs 或者是其他的 我们修改这里

这里两行代码就会告诉我们。系统引擎会将找到后缀名为html的文件 可以引入ejs。
如果我们修改成
app.engine('.ejs',require('ejs').__express);
app.set('view engine','ejs');
那么我们就会告诉系统引擎 找后缀名为ejs的文件。set视图 引擎也是ejs后缀 这里两者的后缀名要一致。



下一节 我将会分析上面index.ejs 的<%=title%>的ejs模板渲染。
Node.js 之 express 入门 ejs include公共部分的更多相关文章
- node.js,express入门看详细篇
先最简单的代码 安装 npm install express app.js 代码内容 const express = require('express') const app = express() ...
- Node.js、express、mongodb 入门(基于easyui datagrid增删改查)
前言 从在本机(win8.1)环境安装相关环境到做完这个demo大概不到两周时间,刚开始只是在本机安装环境并没有敲个Demo,从周末开始断断续续的想写一个,按照惯性思维就写一个增删改查吧,一方面是体验 ...
- Node.js、express、mongodb 实现分页查询、条件搜索
前言 在上一篇Node.js.express.mongodb 入门(基于easyui datagrid增删改查) 的基础上实现了分页查询.带条件搜索. 实现效果 1.列表第一页. 2.列表第二页 3. ...
- Node.js基于Express框架搭建一个简单的注册登录Web功能
这个小应用使用到了node.js bootstrap express 以及数据库的操作 :使用mongoose对象模型来操作 mongodb 如果没了解过的可以先去基本了解一下相关概念~ 首先注 ...
- Node.js系列-express(上)
前言 Node.js系列的第一篇:http,大概描述了通过使用node.js内置的api创建一个服务并监听request实现简单的增删改查.现在,我们就通过通读express官网及使用express框 ...
- node.js使用express框架进行文件上传
关于node.js使用express框架进行文件上传,主要来自于最近对Settings-Sync插件做的研究.目前的研究算是取得的比较好的进展.Settings-Sync中通过快捷键上传文件,其实主要 ...
- node.js之express框架
之前学习过node.js接触过express框架,最近为了编写一个mock server正好用到了express.下面正好就跟大家介绍一下关于express.今天的内容主要围绕这么几个方面? expr ...
- Node.js API快速入门
Node.js API 快速入门 一.事件EventEmitter const EventEmitter = require('events'); class MyEmitter extends Ev ...
- LIGHTX-CMS —— 基于 Node.js,Express.js 以及 SQLite 3 搭建的个人博客系统
概述 LIGHTX-CMS 是我基于 Node.js,Express.js 以及 SQLite 3 搭建的个人博客发布系统. 项目本身可以拿来部署个人博客网站,同时我认为其也适合用以新手学习 Node ...
随机推荐
- oracle之时间转换
:取得当前日期是本月的第几周 SQL> select to_char(sysdate,'YYYYMMDD W HH24:MI:SS') from dual; TO_CHAR(SYSDATE,'Y ...
- mybatis的详解
最新不知道脑子怎么想的,突然对mybatis特别感兴趣,之前在学校的时候学过两天,有了一个简单的认识,工作以后,项目中也有用到,趁着兴趣还在,抓紧整理一个文档,方便学习mybatis,同时,自己也在巩 ...
- C复习手记(Day4)
1.C错误处理 errno.perror() 和sterror() perror() 函数显示您传给它的字符串,后跟一个冒号.一个空格和当前 errno 值的文本表示形式. strerror() 函数 ...
- 读书笔记_Effective_C++_条款二十五: 考虑写出一个不抛出异常的swap函数
在之前的理论上调用对象的operator=是这样做的 void swap(A& x) { std::swap(a, x.a); } A& operator=(const A& ...
- 最近公共祖先:LCA及其用倍增实现 +POJ1986
Q:为什么我在有些地方看到的是最小公共祖先? A:最小公共祖先是LCA(Least Common Ancestor)的英文直译,最小公共祖先与最近公共祖先只是叫法不同. Q:什么是最近公共祖先(LCA ...
- hdu5391 Zball in Tina Town(威尔逊定理)
转载请注明出处: http://www.cnblogs.com/fraud/ ——by fraud Zball in Tina Town Time Limit: 3000/1500 ...
- 无法更新 EntitySet“Ips_Articles”,因为它有一个 DefiningQuery,而 <ModificationFunctionMapping> 元素中没有支持当前操作的 <InsertFunction> 元素。
今天我在使用ef的时候,发现了这样的报错. 无法更新 EntitySet“Ips_Articles”,因为它有一个 DefiningQuery,而 <ModificationFunctionMa ...
- MySQL锁等待分析【1】
场景: 昨天业务系统上遇到了数据库慢的问题(对dcsdba.og_file_audit表的insert 慢&超时).分析后定位到是由于锁等待造成的.分析过程如下: 1.执行show proce ...
- Codeforces 526E Transmitting Levels
http://codeforces.com/contest/526/problem/E 题意:给一个环,每个点有权值,每次给一个数B,求把这个环切割成若干部分,每个部分不超过B,至少要切成几块? #i ...
- POJ 1755 Triathlon
http://poj.org/problem?id=1755 题意:铁人三项,每个人有自己在每一段的速度,求有没有一种3条路线长度都不为0的设计使得某个人能严格获胜? 我们枚举每个人获胜,得到不等式组 ...