一,创建应用

(一),创建应用,监听端口

var express = require('express')
// 创建app应用
var app = express()
app.listen(3000)
 
(二),用户的访问
1,用户可以通过 url 访问 web应用
2,web 后端通过用户访问的 url 处理不同的业务逻辑
 
_________________________________________
 
二,处理请求输出
(一),路由绑定
1,通过 app.get() 或 app.post() 等方法可以把一个 url 路径 和 一个函数(或 n个函数)进行绑定
2,具体代码 :   app.get('/',function(req,res,next){})
3,其中参数的含义:
  (1) req : request 对象 。保存客户端请求的一些数据
  (2) res : response对象 。 提供了一些服务端输出的方法
  (3) next : 用于执行下一个 与路径匹配 的函数
 
_________________________________________
 
(二),内容输出
通过 res.send(string)  将内容发送到客户端。

var express = require('express')
// 创建app应用
var app = express()
/**
* 首页
*/
// 此处路径为 / ,而不是 ./ 。
app.get('/',(req,res,next)=>{
res.send('<h1>welcome my website</h1>')
})
app.listen(3000)
____________________________
 
三,模板配置
 
(一),模板的使用
后端逻辑 与 页面表现 分离  ——  前后端分离
 
(二),模板配置
 
/*  1,定义模板引擎,使用 swig。renderFile 方法 => 解析后缀名为 html 的文件
 *   第一个参数 :模板引擎的名称,同时也是模板文件的后缀
 *   第二个参数 :用于解析处理模板内容的方法
 */
var swig = require('swig');
app.engine('html',swig.renderFile);     
 
/*   2,设置模板存放目录
 *   第一个参数 :必须是 views 。( 不可变更 )
 *   第二个参数 :路径目录
 */
app.set('views','./views');
 
/*   3,注册模板引擎 。 把之前定义的模板引擎配置到应用种
 *   第一个参数 :必须是 view engine 。( 不可变更 )
 *   第二个参数 :和 view engine 方法定义的模板引擎的名称(第一个参数)是一致的
 */
app.set('view engine','html');
 
/*  4,在开发过程中,需要取消模板缓存。默认设置为 true ,需要将其修改为 false
 *  不需要使用 supervisor 工具 , 也可以自动调试的功能 。 方便调试 !!!
 */ 
swig.setDefaults({cache:false})
 
********************************************
app.js 文件代码:
 
var express = require('express')
var swig = require('swig')
// 创建app应用
var app = express()
app.engine('html',swig.renderFile)
app.set('views','./views');
app.set('view engine','html');
swig.setDefaults({cache:false})
/**
* 首页
* 此处路径为 / ,而不是 ./ 。
*/
app.get('/',(req,res,next)=>{
// res.send('<h1>welcome my website</h1>')
 
/**
* 读取 views 目录下的指定文件,解析并返回客户端
* 第一个参数 : 表示模板的文件 , 相对于 views 目录 。默认自动解析 html ,所以可以省略 html后缀 。 默认找到 views/index.html 读取并解析
* 第二个参数 : 传递给模板使用的数据。(后期详细介绍)
*/
res.render('index')
})
app.listen(3000)
 
 

2 ~ express ~ 模板引擎的配置与使用的更多相关文章

  1. springboot系列四、配置模板引擎、配置热部署

    一.配置模板引擎 在之前所见到的信息显示发现都是以 Rest 风格进行显示,但是很明显在实际的开发之中,所有数据的显示最终都应该交由页面完成,但是这个页面并不是*.jsp 页面,而是普通的*.html ...

  2. express+模板引擎构建项目时遇到的几个小问题

    1.启动项目/调试项目 项目启动用:npm start 由于每次更改路由代码后必须重启服务才可以看效果,所以为了达到热加载的效果我们安装 supervisor:全局安装也可以: npm install ...

  3. thinkPhP 引入Smarty模板引擎及配置

    做配置:  TMPL_ENGINE_TYPE = “Smarty” 给smarty做配置: TMPL_ENGINE_CONFIG = array( 左标记, 右标记, )

  4. Express:模板引擎深入研究

    深入源码 首先,看下express模板默认配置. view:模板引擎模块,对应 require('./view'),结合 res.render(name) 更好了解些.下面会看下 view 模块. v ...

  5. 【Python-Django】Jinja2模板引擎配置教程详解!!!!

    Jinjia2的官方文档:http://jinja.pocoo.org/docs/2.10/ 1. 安装Jinja2扩展包 $ pip install Jinja2 2. 配置Jinja2模板引擎 T ...

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

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

  7. Spring Boot 系列(五)web开发-Thymeleaf、FreeMarker模板引擎

    前面几篇介绍了返回json数据提供良好的RESTful api,下面我们介绍如何把处理完的数据渲染到页面上. Spring Boot 使用模板引擎 Spring Boot 推荐使用Thymeleaf. ...

  8. Spring Boot☞ 使用Thymeleaf模板引擎渲染web视图

    静态资源访问 在我们开发Web应用的时候,需要引用大量的js.css.图片等静态资源. 默认配置 Spring Boot默认提供静态资源目录位置需置于classpath下,目录名需符合如下规则: /s ...

  9. 【PHP 模板引擎】Prototype 原型版发布!

    在文章的开头,首先要向一直关注我的人说声抱歉!因为原本是打算在前端框架5.0发布之后,就立马完成 PHP 模板引擎的初版.但我没能做到,而且一直拖到了15年元旦才完成,有很严重的拖延症我很惭愧,再次抱 ...

随机推荐

  1. 横竖屏切换Activity的生命周期

    横竖屏切换的时候Activity的生命周期如下: 1.新建一个Activity,并把各个生命周期打印出来 2.运行Activity,得到如下信息 onCreate--> onStart--> ...

  2. Day2-F-A Knight's Journey POJ-2488

    Background The knight is getting bored of seeing the same black and white squares again and again an ...

  3. 在Anaconda3环境下安装并切换 Tensorflow 2.0 环境

    背景 Anaconda切换各种环境非常方便,现在我们就来介绍一下如何使用anaconda安装tensorflow环境. anaconda v3.5 from 清华镜像站 tensorflow v2.0 ...

  4. vue-router 一个十分简单的应用场景

    时间:2018-03-28 关于vue-router: 这里只大致说一下构建过程和使用情况,将就看看!! 我使用的是vue-cli脚手架+webpack构建的项目 安装vue-cli脚手架 npm i ...

  5. 冰蝎动态二进制加密WebShell特征分析

    概述 冰蝎一款新型加密网站管理客户端,在实际的渗透测试过程中有非常不错的效果,能绕过目前市场上的大部分WAF.探针设备.本文将通过在虚拟环境中使用冰蝎,通过wireshark抓取冰蝎通信流量,结合平时 ...

  6. R 正态性检验:正态概率图

    检验模型是否满足正态性假设的方法: 1.正态概率图 这是我编写的画正态概率图的函数: #绘制正态概率图 plot_ZP = function(ti) #输入外部学生化残差 { n = length(t ...

  7. PhoneGap简易配置使用

    在Android Studio 里新一下Android项目, 这个不用说了. 链接: https://pan.baidu.com/s/1qYcCBEW 密码: ymhh 添加 cordovaapp-c ...

  8. 【WPF学习】第二十二章 文本控件

    WPF提供了三个用于输入文本的控件:TextBox.RichTextBox和PasswordBox.PasswordBox控件直接继承自Control类.TextBox和RichTextBox控件间接 ...

  9. 006.CI4框架CodeIgniter, 加载框架的helper辅助类,调用helper类中的各种函数

    01. CI4框架作为一个很成熟的框架,给我们提供了很多helper辅助类,我们在代码中可以很方便的使用,如下所示,我们在Controllers中调用Cookies类的set_cookie函数 < ...

  10. navicat报错2005 - Unknown MySQL server host 'localhost' (0) 原因及解决方法

    报错原因:没有连接互联网,用navicat连接本地mysql数据库,连接属性ip为localhost. 解决办法:将ip改为127.0.0.1即可.localhost是需要DNS解析后才会是127.0 ...