一、Node.js简介

  1.Node.js是什么?

    Node.js 可以作为服务器向用户提供服务,与 PHP、Python、Ruby on Rails 相比,它跳过了 Apache、Nginx 等 HTTP 服务器,直接面向前端开发。Node.js 是一个让 JavaScript 运行在浏览器之外的平台。PS: Node.js 不运行在浏览器中,所以也就不存 在 JavaScript 的浏览器兼容性问题。

  2.Node.js可以做什么?

    Node.js 能做的远不止开发一个网 站那么简单,使用 Node.js,你可以轻松地开发:  具有复杂逻辑的网站;基于社交网络的大规模 Web 应用;Web Socket 服务器;TCP/UDP 套接字应用程序;命令行工具;交互式终端程序;带有图形用户界面的本地应用程序;单元测试工具;客户端 JavaScript 编译器。

Node.js 最大的特点就是采用异步式 I/O 与事件驱动的架构设计。

二、安装Node.js、express

  1.安装node

  node下载地址链接: https://nodejs.org/zh-cn/download/

  安装完成之后,检查node的版本:

  2.安装express:

安装命令:npm install -g express

  查看安装的版本: express --version

三、建立工程

  Express 在初始化一个项目的时候需要指定模板引擎,默认支持Jade和ejs,为了降低学 习难度我们推荐使用 ejs; ——摘自《Node.js权威指南》

  1. 创建工程:当按照书上的命令行去执行时: express -t ejs projectName

2. 安装install: 然后执行 cd projectName ,进入到你的项目中,执行 npm install ,进行安装,最后通过 npm start 启动项目;

虽然项目起来了,但是查看项目的目录文件,却发现跟自己想象的不一样:明明是要用ejs模板的,结果执行命令后,发现是 jade模板;

然后我自作聪明的重新安装一下ejs模板,npm install ejs ,然后自己又把文件中 .jade 的文件,全部改成了以后缀为 .ejs 的,(多么的机智)

然后我在 layout.ejs 中,加上自己的模板内容, 然后重新启动项目,发现页面上却不能显示layout.ejs 的任何内容;

后来才得知: 在express 3.0之后的版本,执行 express -t ejs projectName ,默认使用的都是 jade模板;

3.使用ejs模板:

(1)如果要使用ejs 模板,需执行新的命令: express -e project2

r然后cd project2, npm install===> npm start:

打开项目目录查看:发现views文件夹下,没有了layout.ejs 文件:express3以上的版本把layout默认给取消了

(2) 安装了ejs后,如何使用ejs的layout模板

  安装express-partials ,运行npm install express-partials 或者在 package.json 里面的 dependencies 添加 "express-partials": "*"。然后在项目目录下运行 npm install 。

然后在app.js 里面引用 express-partials,引用方法:

1.添加引用 var partials = require('express-partials');

2.在 app.set('view engine', 'ejs'); 下面添加 app.use(partials());

在需要引用模板的地方调用 layout:'模版名称' 示例:

app.get('/', function (req, res) {

res.render('index', {

title: '首页',

layout: 'template'

});

  

  

node+express搭建过程以及安装ejs模板引擎解决方案的更多相关文章

  1. Express框架中如何引用ejs模板引擎

    1.如何在项目中安装ejs模板引擎 在NodeJS指南中利用利用以下命令建立网站的基本结构: express -t ejs microblog 运行这个命令后继续运行 cd microblog &am ...

  2. express搭建web服务器、路由、get、post请求、multer上传文件、EJS模板引擎的使用

    express官网 postman工具下载地址  multer的npm文档地址 express模板引擎怎么使用  地址:http://www.expressjs.com.cn/guide/using- ...

  3. 前端笔记之NodeJS(三)Express&ejs模板引擎&请求识别

    一.Express框架 1.1基本使用 创建http服务器特别麻烦,express框架解决了这个的问题. Express在node界的地位,就相当于jQuery在DOM界的地位.jQuery的核心就是 ...

  4. node+express搭建个人网站(2)

    node+express搭建个人网站(1)这一节中成功启动了一个网站但还很简陋,仅仅打印了一个helloworld的网页 作为个人网站,我们当然想输出自己设计好的网页, 我们借助 Express 应用 ...

  5. 在express站点中使用ejs模板引擎

    在express站点中使用ejs模板引擎 文/玄魂 目录 在express站点中使用ejs模板引擎 前言 1.1         安装 1.2修改app.js 1.3创建测试页面 前言 使用 vs创建 ...

  6. node+ejs模板引擎的应用

    前言: 最近在开发一个关于后台管理系统的基础开发平台,解释一下就是不管什么管理系统都有一些相同的功能,但是又有一些细节不一样,这个基础平台就是实现对于基础功能可以进行快速开发,主要有自定义的生成功能代 ...

  7. nodejs-5.1 ejs模板引擎

    ejs官方文档:https://ejs.bootcss.com/ 1.什么是 EJS? "E" 代表 "effective",即[高效]. EJS 是一套简单的 ...

  8. 使用ejs模板引擎

    let express = require('express'); let fs = require('fs'); let ejs = require('ejs'); let app = expres ...

  9. koa2--04.ejs模板引擎

    首先在项目文件下使用cmd,输入:npm install --save koa-views ejs,将koa-views中间件和ejs模板引擎安装到文件中,并自动写入依赖 接在在index.js文件中 ...

随机推荐

  1. [.net 多线程]AutoResetEvent, ManualResetEvent

    ManualResetEvent: 通知一个或多个正在等待的线程已发生事件,允许线程通过发信号互相通信,来控制线程是否可心访问资源. Set() : 用于向 ManualResetEvent 发送信号 ...

  2. C# Winform下一个热插拔的MIS/MRP/ERP框架11(启航)

    初学时,有了想法却完全不知道该从何下指,此序列将抛砖引玉,与大家共同学习进步. 一个程序的初始,必然是启动. 我的要求: 1.应用程序保持单例: 2.从配置文件加载一些基础数据进行初始化: 3.显示软 ...

  3. Python爬虫:带参url的拼接

    如果连接直接这样写,看上去很直观,不过参数替换不是很方便,而且看着不舒服 https://www.mysite.com/?sortField=%E4%BA%BA%E5%B7%A5%E6%99%BA%E ...

  4. linux安装配置阿里云的yum源和python3

    一.yum源理解 yum源仓库的地址 在/etc/yum.repos.d/,并且只能读出第一层的repo文件 yum仓库的文件都是以.repo结尾的 二.下载阿里云的.repo仓库文件 ,放到/etc ...

  5. centos7用docker安装单节点redis4.0.11

    [root@localhost conf]# docker search redisINDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATEDdocker.io d ...

  6. 详细解读Python中的__init__()方法

    init()方法意义重大的原因有两个.第一个原因是在对象生命周期中初始化是最重要的一步:每个对象必须正确初始化后才能正常工作.第二个原因是init()参数值可以有多种形式. 因为有很多种方式为init ...

  7. asp 文章内容里的图片宽度过大 撑爆页面布局 解决办法

    有时候帮朋友做做企业网站,还是asp+access来的快,也经济(不用开数据库空间),fck做的后台内容编辑功能,但是他们传图片的时候不靠谱,图片不管有多宽都直接up上来,把前台页面撑的是面目全非! ...

  8. copy模拟

    1.copy是浅复制,只复制一层:而deepcopy是所有层都复制,适用于lis嵌套listt的复制.两都均是函数.

  9. 【算法笔记】B1046 划拳

    1046 划拳 (15 分) 划拳是古老中国酒文化的一个有趣的组成部分.酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字.如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输 ...

  10. tensorflow-如何防止过拟合

    回归:过拟合情况 / 分类过拟合 防止过拟合的方法有三种: 1 增加数据集 2 添加正则项 3 Dropout,意思就是训练的时候隐层神经元每次随机抽取部分参与训练.部分不参与 最后对之前普通神经网络 ...