基本语法

HTML部分

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

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

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

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

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

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

假如传入的对象为:

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

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

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

XSS安全防范

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

 {
"title": "<script>alert(0);</script>",
}
<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

requirej入门nodeTpl使用(三)的更多相关文章

  1. WCF入门教程(三)定义服务协定--属性标签

    WCF入门教程(三)定义服务协定--属性标签 属性标签,成为定义协议的主要方式.先将最简单的标签进行简单介绍,以了解他们的功能以及使用规则. 服务协定标识,标识哪些接口是服务协定,哪些操作时服务协定的 ...

  2. iOS开发-UI 从入门到精通(三)

    iOS开发-UI 从入门到精通(三)是对 iOS开发-UI 从入门到精通(一)知识点的综合练习,搭建一个简单地登陆界面,增强实战经验,为以后做开发打下坚实的基础! ※在这里我们还要强调一下,开发环境和 ...

  3. Docker入门教程(三)Dockerfile

    Docker入门教程(三)Dockerfile [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第三篇,介绍了Dockerfile的语法,DockerOn ...

  4. C语言细节——献给入门者(三)

    C语言细节——献给入门者(三) >>主题:关于强制类型转换 先来瞎扯下强制类型转换,c语言有很多数据类型,long,short,int,float,double,bool,char等等.当 ...

  5. SQLite 入门教程(三)好多约束 Constraints(转)

    转于: SQLite 入门教程(三)好多约束 Constraints 一.约束 Constraints 在上一篇随笔的结尾,我提到了约束, 但是在那里我把它翻译成了限定符,不太准确,这里先更正一下,应 ...

  6. Django入门实践(三)

    Django入门实践(三) Django简单应用 前面简单示例说明了views和Template的工作过程,但是Django最核心的是App,涉及到App则会和Model(数据库)打交道.下面举的例子 ...

  7. 爬虫入门系列(三):用 requests 构建知乎 API

    爬虫入门系列目录: 爬虫入门系列(一):快速理解HTTP协议 爬虫入门系列(二):优雅的HTTP库requests 爬虫入门系列(三):用 requests 构建知乎 API 在爬虫系列文章 优雅的H ...

  8. 【知识整理】这可能是最好的RxJava 2.x 入门教程(三)

    这可能是最好的RxJava 2.x入门教程系列专栏 文章链接: 这可能是最好的RxJava 2.x 入门教程(一) 这可能是最好的RxJava 2.x 入门教程(二) GitHub 代码同步更新:ht ...

  9. Cordova入门系列(三)Cordova插件调用 转发 https://www.cnblogs.com/lishuxue/p/6018416.html

    Cordova入门系列(三)Cordova插件调用   版权声明:本文为博主原创文章,转载请注明出处 上一章我们介绍了cordova android项目是如何运行的,这一章我们介绍cordova的核心 ...

随机推荐

  1. SimpleFactoryPattern(23种设计模式之一)

    设计模式六大原则(1):单一职责原则 设计模式六大原则(2):里氏替换原则 设计模式六大原则(3):依赖倒置原则 设计模式六大原则(4):接口隔离原则 设计模式六大原则(5):迪米特法则 设计模式六大 ...

  2. R: 自动计算代码运行时间

    ################################################### 问题:代码运行时间   18.4.25 怎么计算代码的运行时间? 解决方案: ptm = pro ...

  3. p4301 [CQOI2013]新Nim游戏

    传送门 分析 通过nim游戏我们可以知道我们现在的任务就是通过两轮之后使得剩余的几堆异或和为非0数 所以我们只需要在第一步使得剩余集合的任意非空子集的异或和非0即可 于是我们考虑线性基 我们知道线性基 ...

  4. C和C++中文件读写的区别

    C中采用的主要是文件指针的办法,C++中对文件的操作主要运用了“文件流”(即非标准的输入输出)的思想 eg1": #include<stdio.h> //... FILE* fp ...

  5. HTML与CSS入门经典(第9版)试读 附随书源码 pdf扫描版​

    HTML与CSS入门经典(第9版)是经典畅销图书<HTML与CSS入门经典>的最新版本,与过去的版本相同,本书采用直观.循序渐进的方法,为读者讲解使用HTML5与CSS3设计.创建并维护世 ...

  6. .NET 实体转换辅助类

    /// <summary> /// 实体转换辅助类 /// </summary> public class ModelConvertHelper<T> where ...

  7. java 获取url及url参数解析

    java  获取url及url参数解析 一.url编码:URLEncoder.encode(userName); 二.url解码: URLDecoder.decode(userName);

  8. 人工智能热门图书(深度学习、TensorFlow)免费送!

    欢迎访问网易云社区,了解更多网易技术产品运营经验. 这个双十一,人工智能市场火爆,从智能音箱到智能分拣机器人,人工智能已逐渐渗透到我们的生活的方方面面.网易云社区联合博文视点为大家带来人工智能热门图书 ...

  9. Django之博客系统:自定义模板标签

    Django提供了很多内置的模板标签比如{% if %}或者{% block %}Django也允许你创建自己的模板标签(template tags)来执行自定义的动作.当你需要在你的模板中添加功能而 ...

  10. 对MySQL性能影响较大的五类配置参数

    以下主要是对MySQL 性能影响关系紧密的五大配置参数的介绍. 一.      连接 连接通常来自Web 服务器,下面列出了一些与连接有关的参数,以及该如何设置它们. (一).             ...