转自:https://blog.csdn.net/dongmelon/article/details/72403913

02.ejs。这是被include的文件

  1. <script>
  2. console.log("aaaa")
  3. </script>

01.ejs  模板文件ejs  注意:<% js语句 %>  <%= 取值到模板上面 %>  <%- include写法 %>

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  2. "http://www.w3.org/TR/html4/loose.dtd">
  3. <html>
  4. <head>
  5. <title></title>
  6. </head>
  7. <body>
  8. <% for (var i=0;i<names.length;i++){ %>
  9. <h1><%= names[i] %></h1>
  10. <% } %>  //js循环语句加取值
  11. <%- include("./htdocs/views/02.ejs") %>  //include其他文件这样可以把公共东西写一起
  12. </body>
  13. </html>

app.js

  1. var ejs=require("ejs");
  2. var express=require('express')
  3. var app=express();
  4. console.log(__dirname);
  5. app.get("/open",function(req,res){
  6. str=require("fs").readFileSync(__dirname+"/views/01.ejs","utf8")  //先读文件
  7. var html=ejs.render(str,{
  8. names:["cd","lw"],       //第一个参数是给ejs渲染的内容
  9. filename:__dirname       //第二个参数是设置include路径的 不写就找不到 报错
  10. })                           //渲染html
  11. console.log(html)
  12. res.send(html)           //发送给客户
  13. })
  14. app.listen(3000,function(){
  15. console.log("server is running")
  16. })

另外一种js写法可以用res.render();

    1. <span style="font-size:14px;">var ejs=require("ejs");
    2. var express=require('express');
    3. var path=require("path")
    4. var app=express();
    5. app.set('views', path.join(__dirname, 'views'));
    6. app.set('view engine', 'ejs');     //<u>这是ejs配置 不配置也行默认在views文件下</u>
    7. console.log(__dirname);
    8. app.get("/open",function(req,res){
    9. res.render("b.ejs",{
    10. names:["cd","lw"]      //第一个参数是给ejs渲染的内容
    11. //filename:__dirname     //第二个参数是设置include路径的 不写就找不到 报错
    12. })
    13. })
    14. app.listen(3000,function(){
    15. console.log("server is running")
    16. })</span>

62.nodejs中的ejs模板学习的更多相关文章

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

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

  2. NodeJS中使用swig模板引擎

    NodeJS中的默认引擎是jade有点过于复杂,而且不是以HTML为基础的,学习成本和前端适应成本都很大.而ejs虽然简单,但不支持模板导入,而且效率一般. swig的语法简单,学习成本很低,符合常规 ...

  3. nodejs中引入art-template模板

    使用Webstorm创建nodejs express应用时,默认使用的是jade或者ejs模板,对于不习惯这两种模板语法的人来说确实不是很方便.没关系,这里我们使用art-template模板引擎,使 ...

  4. Express中的Ejs模板传值问题

    在Ejs模板传值过程中,route下的变量值通过res.sender()中的变量参数传给views, 这时在views中若该变量在javascript代码中使用,可直接使用该变量,不必使用<% ...

  5. Nodejs下express+ejs模板的搭建

    nodejs的环境配置,这里就不做说明了.在nodejs安装后的步骤在这里说明一下 首先 全局安装express  npm install -g express-generator 安装ok后,接着 ...

  6. 学习篇:NodeJS中的模板引擎:jade

    NodeJS 模板引擎作用:生成页面 在node常用的模板引擎一般是 1.jade --破坏式的.侵入式.强依赖(对原有的html体系不友好,走自己的一套体系)2.ejs --温和的.非侵入式的.弱依 ...

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

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

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

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

  9. Node.js学习笔记(七) --- Node.js的静态文件托管、路 由、EJS 模板引擎、GET 、POST

    1 . Nodejs 静态文件托管静态 web 服务器封装 2 . 路由 官方解释:  路由(Routing)是由一个 URI(或者叫路径)和一个特定的 HTTP 方法(GET.POST 等)组成的, ...

随机推荐

  1. kali 2.0 linux中的Nmap的操作系统扫描功能

    不多说,直接上干货! 可以使用-O选项,让Nmap对目标的操作系统进行识别. msf > nmap -O 202.193.58.13 [*] exec: nmap -O 202.193.58.1 ...

  2. Hadoop 框架基础(四)

    ** Hadoop 框架基础(四) 上一节虽然大概了解了一下 mapreduce,徒手抓了海胆,不对,徒手写了 mapreduce 代码,也运行了出来.但是没有做更深入的理解和探讨. 那么…… 本节目 ...

  3. 学golang之前都需要哪些前置知识?

    我学golang,感觉前面基础语法部分都很快能学会,但是到了goroutine,channel等后面的部分就看不懂了,是不是我学这个之前还得学习其他什么知识啊?(我有C语言基础,对于C语言里面的指针, ...

  4. 机器学习(四) 机器学习(四) 分类算法--K近邻算法 KNN (下)

    六.网格搜索与 K 邻近算法中更多的超参数 七.数据归一化 Feature Scaling 解决方案:将所有的数据映射到同一尺度 八.scikit-learn 中的 Scaler preprocess ...

  5. AlexNet (ImageNet模型)

    介绍 AlexNet是LeNet的一种更深更宽的版本.首次在CNN中应用ReLU.Dropout和LRN,GPU进行运算加速. 一共有13层,有8个需要训练参数的层(不包括池化层和LRN层),前5层是 ...

  6. dijkstra STL 堆优化

    Code: #include<iostream> #include<algorithm> #include<vector> #include<queue> ...

  7. [Bug]C++ XXX:undefined reference to "xxx"

    昨天写了个广义表,写完后用clang++编译,结果给我报了一个这样的错 tanglizi@archlinux ~/Code/cpp/DS/genlist $ clang++ main.cpp genl ...

  8. HDU-1034 Candy Sharing Game 模拟问题(水题)

    题目链接:https://cn.vjudge.net/problem/HDU-1034 水题 代码 #include <cstdio> #include <algorithm> ...

  9. C语言操作数截断

    //测试截断 #include <stdio.h> int main() { int a = 0x80000001; unsigned int b = 0x80000001; printf ...

  10. C/C++里面的struct和typedef

    今天看到这样的代码 typedef struct _Abc { uint64_t unit_id; ...... } Abc; 开始不理解这个的意思,后来看到这个解释: https://stackov ...