前端模板Nunjucks简介

参考资料: https://mozilla.github.io/nunjucks/

https://mozilla.github.io/nunjucks/templating.html

https://mozilla.github.io/nunjucks/api.html

常用API

render

nunjucks.render(name, [context], [callback])

var res = nunjucks.render(‘foo.html‘);
var res = nunjucks.render(‘foo.html‘, { username: ‘James‘ });
nunjucks.render(‘async.html‘, function(err, res) {
});

renderString

nunjucks.renderString(str, context, [callback]) 返回渲染后的原始字符串。

var res = nunjucks.renderString(‘Hello {{ username }}‘, { username: ‘James‘ });     //输出 Hello James

configure

nunjucks.configure([path], [opts]); path 默认当前路径,模板文件所在的路径。

nunjucks.configure(‘views‘, {       //views为模板文件所在的目录
    autoescape: true,
    express: app,
    watch: true
});

getTemplate

env.getTemplate(name, [eagerCompile], [callback]) Retrieve the template named name

var tmpl = env.getTemplate(‘page.html‘, true);          //返回模板文件 page.html 的内容

express

env.express(app) 用做服务端渲染

var app = express();
env.express(app);

app.get(‘/‘, function(req, res) {
    res.render(‘index.html‘);
});

constructor

new Template(src, [env], [path], [eagerCompile])

var tmpl = new nunjucks.Template(‘Hello {{ username }}‘);
tmpl.render({ username: "James" }); // -> "Hello James"
时间: 2024-12-22 23:22:25

前端模板Nunjucks简介的相关文章

前端模板Juicer

Juicer 是一个高效.轻量的前端 (Javascript) 模板引擎,使用 Juicer 可以是你的代码实现数据和视图模型的分离(MVC). 除此之外,它还可以在 Node.js 环境中运行. 用过别的前端模板也有不错的, 比如jsrender等,但比较困扰人的一个问题就是:前端模板的定界符和后端模板冲突,造成很多麻烦,比如很多都喜欢用{{}}或{%%}做定界符. Juicer一个特点就是自定义模板语法边界符,下边是 Juicer 默认的边界符.你可以借此解决 Juicer 模板语法同某些后

前端模板引擎入门

模板引擎 模板引擎 起到 数据和视图分离的作用, 模板对应视图, 关注如何展示数据, 在模板外头准备的数据, 关注那些数据可以被展示. 后端模板引擎 freemarker 如下介绍,  java后台的模板引擎, freemark介绍,其图能很好标明这种关系. http://freemarker.org/ Apache FreeMarker is a template engine: a Java library to generate text output (HTML web pages, e

NetworkComms网络通信框架配套CodeSmith模板使用简介

NetworkComms网络通信框架配套CodeSmith模板使用简介 NetworkComms网络通信程序开发过程中,与数据库的交互部分,很多代码我们采用CodeSmith模板来生成. 此套CodeSmith模板目前只支持sql server 数据库 模板下载地址:  [模板下载]分享我所使用的数据库框架 我们以Sql server数据库为例 简单的看一下如何使用CodeSmith模板生成相关文件 首先双击打开模板文件 第二步:打开属性窗口 数据库配置完成后 ,选择相应的表 生成的代码如下:

前端模板引擎arttemplate,后端模板引擎Nvelocity

It's my first blog 大家好,我叫曾岑,朋友们都叫我包子,今年21岁,湖北人,刚大学毕业,学的.net开发.去年一年,在南京工作了一年,那时候还没有拿到毕业证,找工作也是蛮难的,别人说没毕业证,也没经验,工资只能给个基础工资,不过还好,和几个朋友一起结伴去的,一起租的房子住的.在南京的工作经历就不说那么多了,至少让我看到了编程的这个世界. 今年7月份,辞掉了南京的工作,来到了深圳这个城市,重新开始找工作,运气还算不错,第二天就面试上了,第三天就正式上班了,工资待遇对于我这种新手来

Yii框架学习笔记(二)将html前端模板整合到框架中

选择Yii 2.0版本框架的7个理由 http://blog.chedushi.com/archives/8988 刚接触Yii谈一下对Yii框架的看法和感受 http://bbs.csdn.net/topics/390807796 更多内容 百度:yii 前端 http://my.oschina.net/u/1472492/blog/221085 摘要 Yii框架学习笔记(二)将html前端模板整合到框架中 原文地址:http://www.ldsun.com/1309.html 上一节成功将Y

前端模板artTemplate,handlerbars的使用心得

写前端页面肯定离不开模板渲染,就近期项目中用的两个前端模板做一些使用总结,顺便复习一下,也方便后面温故. 1,artTemplate 优点: 1,一般web端用得较多,执行速度通常是 Mustache 与 tmpl 的 20 多倍,支持运行时调试,可精确定位异常模板所在语句 2,安全,默认对输出进行转义.在沙箱中运行编译后的代码 3,支持include语句,可在浏览器端实现按路径加载模板 4,支持预编译,可将模板转换成为非常精简的 js 文件 编写模板: <tbody class="wor

【超精简JS模版库/前端模板库】原理简析 和 XSS防范

使用jsp.php.asp或者后来的struts等等的朋友,不一定知道什么是模版,但一定很清楚这样的开发方式: <div class="m-carousel"> <div class="m-carousel-wrap" id="bannerContainer"> </div> </div> <ul class="catelist onepx" onepxset="

【大前端之前后分离02】前端模板嵌套问题

回顾 接上文:[大前端之前后分离01]JS前端渲染VS服务器端渲染,我们探讨了为什么要做前后分离,以及前端渲染需要解决的问题,最后提出了自己的解决方案: 前端代码编译形成两套代码:①前端发布版本 + ②服务器端脚本 这个想法借鉴了fis plus的smarty模块化思维,以及reactJS编译运行的概念,上次初步论证了其可行性,也遗留了一些问题,其中比较关键的问题是: 前端模块嵌套问题 我们在一个模板中又有一个widget,在子模板中又有一个widget,父模块与子模块中有数据依赖,或者子模块为

前端模板与渲染方式

1 页面级的渲染 再刚有web的时候,前端与后端的交互,非常直白,浏览器端发出URL,后端返回一张拼好了的HTML串.浏览器对其进行渲染.html中可能会混有一些php(或者php中混有一些html).在服务端将数据与模板进行拼装,生成要返回浏览器端的html串. 这与我们现在做一个普通网页没什么区别.只不过现在,我们更常使用模板技术来解决前后端耦合的问题. 前端使用模板引擎,在html中写一些标签,与数据与逻辑基本无关.后端在渲染的时候,解析这些标签,生成HTML串,如smarty.其实前端与