zoukankan      html  css  js  c++  java
  • 62.nodejs中的ejs模板学习

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

    02.ejs。这是被include的文件

    [plain] view plain copy
     
    1. <script>  
    2.     console.log("aaaa")  
    3. </script>         


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

    [plain] view plain copy
     
    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.   
    12.     <%- include("./htdocs/views/02.ejs") %>  //include其他文件这样可以把公共东西写一起  
    13. </body>  
    14. </html>  


    app.js

    [javascript] view plain copy
     
    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();

    [javascript] view plain copy
     
      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.   
      6. app.set('views', path.join(__dirname, 'views'));  
      7. app.set('view engine', 'ejs');     //<u>这是ejs配置 不配置也行默认在views文件下</u>  
      8.   
      9. console.log(__dirname);  
      10. app.get("/open",function(req,res){  
      11.     
      12.     res.render("b.ejs",{  
      13.              names:["cd","lw"]      //第一个参数是给ejs渲染的内容  
      14.              //filename:__dirname     //第二个参数是设置include路径的 不写就找不到 报错  
      15.          })  
      16. })  
      17. app.listen(3000,function(){  
      18.     console.log("server is running")  
      19. })</span>  
  • 相关阅读:
    JavaScript中双叹号“!!”作用
    JavaScript两个变量的值交换的多种方式
    自定义npm包——typeScript版本
    自定义npm包的创建、发布、更新和撤销
    vuex概念总结及简单使用实例
    详解javascript: void(0);
    面向对象的CSS
    vue指令概览
    实现水平居中的办法
    C#分块下载文件
  • 原文地址:https://www.cnblogs.com/sharpest/p/8086882.html
Copyright © 2011-2022 走看看