zoukankan      html  css  js  c++  java
  • Express 框架中 使用ejs

    Express安装使用

    1、新建文件夹,使用npm init生成package.json文件。

    2、执行npm命令安装express     npm install express --save

    3、基础使用

      

     多级目录

        

     动态路由

      

     由于路由匹配是从上往下的,所以在使用动态路由时,一定要注意路由配置的顺序,如果将上面两个路由配置顺序调换,那么/article/add就会被前面的动态路由截取。

     获取路由参数

       

     Express 框架中使用ejs

    1、使用npm安装ejs:npm install ejs --save

    2、基础使用

        

     ejs绑定数据

    const express = require("express");
    const app = express()
    app.set("view engine","ejs")
    
    app.get("/news",(req,res)=>{
        let userinfo={
            username:"张三",
            age:20
        }
        let title="我是一个标题";
        let article="<h3>我是一个h3</h3>";
    
        let list=["1111","22222","3333333"]
    
        let newsList=[
            {title:"新闻1111"},
            {title:"新闻2222"},
            {title:"新闻3333"},
        ]
    
        res.render("news",{
            userinfo:userinfo,
            title:title,
            article:article,
            flag:true,
            score:60,
            list:list,
            newsList:newsList
        })
    })
    
    app.listen(3000,'127.0.0.1')

    news.ejs

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
        <p><%=userinfo.username%>---<%=userinfo.age%></p>
    
        <p><%=title%></p>
    
        <p><%-article%></p>
    
        <h2>条件判断</h2>
    
        <%if(flag==true){%>
            <strong>flag=true</strong>
        <%}%>
    
        <%if(score>=60){%>
            <p>及格</p>
        <%}else{%>
           不及格
        <%}%>
    
        <h2>循环遍历</h2>
    
        <ul>
            <%for(let i=0;i<list.length;i++){%>
                <li><%=list[i]%></li>
            <%}%>        
        </ul>
        
        <ul>
            <%for(let i=0;i<newsList.length;i++){%>
                <li><%=newsList[i].title%></li>
            <%}%>        
        </ul>
    </body>
    </html>

     ejs引入模板

    首先、在views文件夹中新建模板页面footer.ejs

     然后在index.ejs中调用模板页面

     最后通过路由匹配访问index.ejs

      

     修改模板文件ejs后缀为html

     首先配置入口页面

     然后在views文件夹中新建index.html文件

     最后通过路由匹配渲染页面

    const express = require("express");
    const app = express();
    // 在 app.js 的头上定义 ejs
    var ejs = require('ejs');
    // 注册 html 模板引擎
    app.engine("html",ejs.__express)
    // 将模板引擎换成 html 代码
    app.set("view engine","html")
    app.get("/",(req,res)=>{
        console.log(req);
        let title = "你好ejs";
        res.render("index",{
            title:title
        })
    })
    app.listen(3000,'127.0.0.1')

    利用 Express. static 托管静态文件

     首先需要在入口文件中配置静态文件(图片、样式等等)目录

    app.use(express.static("static"))
    然后就可以在需要使用的地方直接调用static目录的文件了。如果静态资源存放在多个目录下面,我们可以多次使用上面的配置代码。
       

     指定挂载路径

    当静态资源在多个目录,为了便于管理,可以在配置目录时,给资源添加一个虚拟目录名称。

     然后在调用的时候,修改一下路径就可以了

  • 相关阅读:
    SCHTASKS /CREATE
    手机酷派4G5316 5313s 黑砖 求转成功 9008端口 9006端口 少走弯路选对镜像
    网络共享 相关知识与原理 操作步骤
    电脑 主板 硬盘的 电脑系统
    按键精灵 按键代码
    win7 快捷键 收集
    默认主页更改 主页锁定 打开浏览器时的网页设置
    按键精灵 以时间命名文件夹 创建文件 写入文件 和截图
    按键精灵-----按钮控制(开始子程序)的时候是要用到多线程的
    java web 大总结
  • 原文地址:https://www.cnblogs.com/yuyujuan/p/13947212.html
Copyright © 2011-2022 走看看