zoukankan      html  css  js  c++  java
  • requirej入门nodeTpl使用(三)

    基本语法

    HTML部分

    在模板中的 HTML 部分,使用定界符“<?”和“?>”作为语法的开始和结束。

    在定界符内,可以书写任意JavaScript语句,如:

    1 <?for(var i=0; i<10; i++){?>
    2   <p>hello, world</p>
    3 <?}?>

    使用等于号“=”来输出对应的值:

    1 <?for(var i=0; i<10; i++){?>
    2   <p>hello, world, 第 <?=i?> 次</p>
    3 <?}?>

    直接使用“@属性名”来表示传入的对象对应的属性。

    假如传入的对象为:

    1 {
    2   "title": "我是传入的标题",
    3   "favor": ["足球", "篮球", "乒乓球", "琉璃球"]
    4 }

    在模板中,可以通过 @title@favor 来分别引用传入的 titlefavor 值:

    1 <h1><?=@title?></h1>
    2 <ul>
    3   <?for(var i=0; i<@favor.length; i++){?>
    4     <li><?=i?>:<?=@favor[i]?></li>
    5   <?}?>
    6 </ul>

    XSS安全防范

    =” 默认会经过 XSS 安全过滤,以确保输出到页面中的内容是安全的,例如:

    1 {
    2   "title": "<script>alert(0);</script>",
    3 }
    4 <h1><?=@title?></h1>

    最终编译的结果是:

    <h1>&lt;script&gt;alert(0);&lt;/script&gt;</h1>

    如果你不想过滤 XSS,你可以使用 “==” 来代替 “=”,如:

    <h1><?==@title?></h1>

    将会输出:

    <h1><script>alert(0);</script></h1>

    文件来源:http://www.nodetpl.com/cn/grammar.html

  • 相关阅读:
    每周工作进度及工作量统计
    debug阶段工作期站立会议2(进度推进)
    new NABCD
    事后诸葛亮会议 (尸体解剖)
    debug阶段工作期站立会议1
    用户使用报告
    Scrum会议10(Beta版本) 补交
    历年学生作品点评
    关于词频统计的效能测试
    敏捷开发之Scrum站立会议
  • 原文地址:https://www.cnblogs.com/congxueda/p/5950386.html
Copyright © 2011-2022 走看看