zoukankan      html  css  js  c++  java
  • Koa中ejs模板的使用

    要想在Koa中使用ejs模板渲染网页,还需要koa-views 配合才行,下面请看详细步骤。

    安装koa-viewsejs

    npm install --save koa-views
    
    npm install ejs --save
    

    引入 koa-views 配置中间件

    //引入
    const Koa = require('koa')
    const path = require('path')
    const views = require('koa-views')
    const app = new Koa()
    
    //配置需要渲染的文件路径及文件后缀
    // app.use(views('views',{map:{html:'ejs'}})); // 模板后缀名是ejs,与下面写法不同,map和extension效果一样的,但是map写法,模板的后缀名是xxx.html,extension写法的后缀名是xxx.ejs
    app.use(views(path.join(__dirname,'./view'),{
        extension:'ejs'
    }))
    

    Koa中使用ejs

    // 写一个中间件配置公共的信息,可以在全站模板内直接调用
    app.use(async (ctx,next)=>{
      ctx.state.userinfo = '较瘦';
      await next();  //继续向下匹配路由
    });
    
    //render参数1:要渲染的ejs文件名,参2:需要传递的变量
    app.use(async(ctx)=>{
        let title = 'hello lval'
        await ctx.render('index',{title})
    })
    

    Ejs 引入外部的ejs模板

    <%-includeheader.ejs%>
    

    ejs语法

    输出:
    在页面中输出变量值,你可以这么用:

    <div><%= var01 %></div>
    

    如果不希望变量值的内容被转义,那就这么用:

    <div><%- var02 %></div>
    

    模块的逻辑支持:
    所有使用 <% %> 括起来的内容都会被编译成 Javascript,你可以在模版文件中像写 js 一样 Coding,也允许你声明变量,作用域就是当前模版,因为一个模版会被编译成一个 Javascript 函数。

    <ul>
        <% for(var i = 0; i < 10; i++) {%>
        <li>item  <%-i %></li>
        <% } %>
    <ul>
    
    1. ejs 绑定数据
     
    <%= title %>
     
    2. ejs 绑定html数据
     
    <%- htmlString %>
     
    3. ejs 判断语句
     
    <% if (num > 20){ %>
       <div> true </div>
    <% }else{ %>
       <div> false </div>
    <% } %>
     
    4. ejs 循环数据 
     
    <% for(var i=0;i<list.length;i++){ %>
        <li><%= list[i] %></li>
    <% } %>
     
    5. ejs 引入组件
     
    <% include public/header.ejs %>
    
  • 相关阅读:
    $$Ctrl+shift+M分数罗马字母小写
    设置字体大小加粗斜体下划线
    无序列表有序列表
    数学公式插入
    文本居中、代码插入、图片插入
    VM 使用问题 | 安装失败->>注册表
    VM小技巧——虚拟机解决vm窗口太小的办法
    OneNet平台实践
    linux 打包 | autoconf 使用方法
    C 总结 | 复习注意点
  • 原文地址:https://www.cnblogs.com/jiaoshou/p/13447263.html
Copyright © 2011-2022 走看看