swig 是node端的一个优秀简洁的模板引擎,类似Python模板引擎Jinja,目前不仅在node端较为通用,相对于jade、ejs优秀,而且在浏览器端也可以很好地运行。
特性:
支持大多数主流浏览器。
表达式兼容性好。
面向对象的模板继承。
将过滤器和转换应用到模板中的输出。
可根据路劲渲染页面。
支持页面复用。
支持动态页面。
可扩展、可定制。
使用示例:
模板代码
<h1>{{ pagename|title }}</h1> <ul> {% for author in authors %} <li{% if loop.first %} class="first"{% endif %}>{{ author }}</li> {% endfor %} </ul>
node.js 代码:
var swig = require('swig'); var template = swig.compileFile('/absolute/path/to/template.html'); var output = template({ pagename: 'awesome people', authors: ['Paul', 'Jim', 'Jane'] });
输出
<h1>Awesome People</h1> <ul> <li class="first">Paul</li> <li>Jim</li> <li>Jane</li> </ul>
http://www.catcoder.com/post/NodeJS%E4%B8%AD%E4%BD%BF%E7%94%A8swig%E6%A8%A1%E6%9D%BF%E5%BC%95%E6%93%8E NodeJS中的默认引擎是jade有点过于复杂,而且不是以HTML为基础的,学习成本和前端适应成本都很大。而ejs虽然简单,但不支持模板导入,而且效率一般。 swig的语法简单,学习成本很低,符
nodejs 介绍 nodejs是运行在服务端的JavaScript;一个事件驱动I/O服务端JavaScript环境,基于Google的V8引擎,V8引擎执行Javascript的速度非常快,性能非常好。 nodejs 的模块 内置模块 : 可以直接引入使用 第三方模块 : 需要通过 npm 命令下载安装 然后引入使用 自定义模块 : 通过 module.exports 和 exports 定义
代码: var d = 5 switch (d) { case 1: x = "今天是星期一"; break; case 2: x = "今天是星期二"; break; case 3: x = "今天是星期三"; break; case 4: x = "今
SWIG是个帮助使用C或者C++编写的软件能与其它各种高级编程语言进行嵌入联接的开发工具。SWIG能应用于各种不同类型的语言包括常用脚本编译语言例如Perl, PHP, Python, Tcl, Ruby and PHP。 支持语言列表 中也包括非脚本编译语言,例如C#, Common Lisp (CLISP, Allegro CL, CFFI, UFFI), Java, Modula-3, OC
写在前面 由于想把opencv的一些东西移植到服务器后端上,因此想使用SWIG进行代码的转换,生成一个nodejs的库,过程中遇到如下困难解决了一个上午。。。特此记录,期望可以帮助到更多的小伙伴。 环境描述 系统:ubuntu 1604 SWIG版本:3.0.12(release 最新) nodejs版本:10.15.3(最新) npm版本:6.4.1 v8版本: 6.8+ 问题描述 开始的时候只
1.下载 http://www.swig.org/download.html 2.解压后在window编译执行,使用cygdrive ./configure --prefix=/usr/program/swig/ #或者其他安装目录 make make install在./configure 时遇到Cannot find pcre-config script from PCRE (Perl Com
①安装swig npm install swig ②app.js //引入express框架 var express = require("express") var app = express() var port = 8081 //引入前端模板引擎 var swig = require("swig") //设置页面不缓存 swig.setDefaults({cache: false}) //
移动终端总决赛终于在昨天在西安电子科技大学结束了,很遗憾我们没能取得一个好的成绩。说多都是泪,还是接着学习NodeJs吧,下面是我学习Swing模板引擎的总结。 一、常用 1、变量 {{ foo.bar }} {{ foo['bar'] }} foo是后台传给模板的变量名,bar是foo的属性值。如果变量未定义,输出空字符。 当然,变量也可以通过过滤器来修改: {{ name|title }} w
简介 swig 是node端的一个优秀简洁的模板引擎,类似Python模板引擎Jinja,目前不仅在node端较为通用,相对于jade、ejs优秀,而且在浏览器端也可以很好地运行。 这是官方文档。 语法 swig的变量 {{ foo.bar }} {{ foo['bar'] }} //如果变量未定义,输出空字符。 1 2 3 1 2 3 swig的标签 extends 使当前模板继承父
So you want to get going in a hurry? To illustrate the use of SWIG, suppose you have some C functions you want added to Tcl, Perl, Python, Java and C#. Specifically, let's say you have them in a file
最近发现有些漏洞不能扫描,原来是没有需要的库,这些库原来是用SWIG生成的一些接口程序,于是顺便小研究了下这个SWIG是怎么回事。 下面是摘于SWIG中文网:http://swig.minidx.com/ SWIG是个帮助使用C或者C++编写的软件能与其它各种高级编程语言进行嵌入联接的开发工具。SWIG能应用于各种不同类型的语言包括常用脚本编译语言例如Perl, PHP, Python, Tcl,
1. SWIG Simplified Wrapper and Interface Generator (SWIG) 简化包装器和接口生成器 2. 作用 向脚本语言接口公开 C/C++ 代码 因为:c/c++的高效性能,所有对开发人员的一个常见要求是向脚本语言接口公开 C/C++ 代码,这正是 Simplified Wrapper and Interface Generator (SWIG) 的用武
SWIG是一种软件开发工具,它将C和C++编写的程序与各种高级编程语言连接起来,常用于创建高级解释或编译的编程环境、用户界面。 download git clone https://gitee.com/mirrors_swig/swig change ver cd swig git tag git checout rel-4.0.1 make ./autogen.sh ./configure
具体查看ejs官方文档 https://github.com/mde/ejs
我们自己实现了一个轻量级的模板引擎,不要问为什么不用smart之类的,因为我们认为没有必要为了一个小小的模板引擎而引入smaart这样复杂的实现。你可能会说,smart功能强大,支持各种标签,标签也是很强大,而且还可以对模板引擎进行各种"灵活"的配置... 这里我们觉得有必要说明一下: 框架的内置模板引擎基本上实现了我们日常开中所有常用的标签。 不常用的标签我们也做了巧妙的实现。 我们只提供了扩展
内置模板引擎 视图的模板文件可以支持不同的解析规则,默认情况下无需手动初始化模板引擎。 可以通过下面的几种方式对模板引擎进行初始化。 配置文件 内置模板引擎的参数统一在配置目录的template.php文件中配置,例如: return [ // 模板引擎类型 支持 php think 支持扩展 'type' => 'Think', // 模板路径 '
Warning: The packages listed below may be outdated, no longer maintained or even broken. Listing here does not constitute an endorsement or recommendation from the Expressjs project team. Use at your
Use the app.engine(ext, callback) method to create your own template engine. ext refers to the file extension, and callback is the template engine function, which accepts the following items as parame
hi-nginx-java内置了两个mustache模板引擎:mustache.java和jmustache。 以下介绍仅就jmustache而言。 字符串模板 字符串模板是最简单的情况。例如: package test; import hi.request; import hi.response; import hi.route; import java.util.regex.Matcher
快速开始 安装模块 # 安装koa模板使用中间件 npm install --save koa-views # 安装ejs模板引擎 npm install --save ejs 使用模板引擎 demo源码 https://github.com/ChenShenhai/koa2-note/blob/master/demo/ejs/ 文件目录 ├── package.json ├── index.js
模版引擎 引入 我们在使用ajax请求数据时,返回的如果是一个 JSON 格式的字符串,我们需要将其包装到对应的HTML代码中,再添加到页面上,才能看到效果。那么这个包装得过程有没有简单的方法呢? 假设在 js 中有如下数据: var obj = { name:"fox", age:18, skill:"卖萌" }; 希望包装为: <