Web前端开发网

web.fly63.com

首页 资源 工具 文章 教程 栏目
  • 在线搜索
  • 文章标签
  • 文章投稿
  • 关于我们
资源分类
AI智能酷站推荐招聘/兼职框架/库模块/管理移动端UI框架Web-UI框架Js插件CSS相关在线工具建站资源 更多
网站收录 / 问题反馈

swig

分享
复制链接
新浪微博
QQ 好友

扫一扫分享

GitHub:https://github.com/paularmstrong/swig
描述信息:nodejs前端模板引擎
GitHub

swig是JS模板引擎,它有如下特点:

  • 支持大多数主流浏览器。
  • 表达式兼容性好。
  • 面向对象的模板继承。
  • 将过滤器和转换应用到模板中的输出。
  • 可根据路劲渲染页面。
  • 支持页面复用。
  • 支持动态页面。
  • 可扩展、可定制。


1、API

swig.init({
    allowErrors: false,
    autoescape: true,
    cache: true,
    encoding: 'utf8',
    filters: {},
    root: '/',
    tags: {},
    extensions: {},
    tzOffset: 0
});

options:

  • allowErrors: 默认值为 false。将所有模板解析和编译错误直接输出到模板。如果为 true,则将引发错误,抛出到 Node.js 进程中,可能会使您的应用程序崩溃。
  • autoescape: 默认true,强烈建议保持。字符转换表请参阅转义过滤器。
    • true: HTML安全转义
    • false: 不转义,除非使用转义过滤器或者转义标签
    • 'js': js安全转义
  • cache: 更改为 false 将重新编译每个请求的模板的文件。正式环境建议保持true。
  • encoding: 模板文件编码
  • root: 需要搜索模板的目录。如果模板传递给 swig.compileFile 绝对路径(以/开头),Swig不会在模板root中搜索。如果传递一个数组,使用第一个匹配成功的数组项。
  • tzOffset: 设置默认时区偏移量。此设置会使转换日期过滤器会自动的修正相应时区偏移量。
  • filters:自定义过滤器或者重写默认过滤器,参见自定义过滤器指南。
  • tags: 自定义标签或者重写默认标签,参见自定义标签指南。
  • extensions: 添加第三方库,可以在编译模板时使用,参见参见自定义标签指南。


2、nodejs

var tpl = swig.compileFile("path/to/template/file.html");
var renderedHtml = tpl.render({ vars: 'to be inserted in template' });

或者

var tpl = swig.compile("Template string here");
var renderedHtml = tpl({ vars: 'to be inserted in template' });


3、结合Express

npm install express
npm install consolidate

然后

app.engine('.html', cons.swig);
app.set('view engine', 'html');


4、浏览器

Swig浏览器版本的api基本与nodejs版相同,不同点如下:

  • 不能使用swig.compileFile,浏览器没有文件系统
  • 你必须提前使用swig.compile编译好模板
  • 按顺序使用extends, import, and include,同时在swig.compile里使用参数templateKey来查找模板
var template = swig.compile('<p>{% block content %}{% endblock %}</p>', { filename: 'main' });
var mypage = swig.compile('{% extends "main" %}{% block content %}Oh hey there!{% endblock %}', { filename: 'mypage' });


仅供个人学习参考/导航指引使用,具体请以第三方网站说明为准,本站不提供任何专业建议。如果地址失效或描述有误,请联系站长反馈~感谢您的理解与支持!

链接: https://web.fly63.com/nav/1534

更多»
热门资源
TypeScript
一种由微软开发的自由和开源的编程语言。它是JavaScript的一个超集
官网
GitHub
Vite
下一代前端开发与构建工具
官网
GitHub
webpack
webpack 是一个模块打包器。它的主要目标是将 JavaScript 文件打包在一起
官网
GitHub
npm
javascript 最流行的包管理器
官网
GitHub
yarn
可替代NPM的快速、可靠、安全的可信赖包管理工具Yarn
官网
GitHub
bower
解决js的依赖管理
官网
GitHub
grunt
基于Node.js的项目构建工具。它可以自动运行你所设定的任务
官网
GitHub
Parcel
快速,零配置的 Web 应用程序打包器
官网
GitHub
babel
Babel 是一个 JavaScript 编译器,可用下一代JavaScript 语法写代码
官网
GitHub
browserify
一个浏览器端代码模块化工具,require和module.exports来导入和导出.Browserify的原理:部署时处理代码依赖,将模块打包为一个文件。
官网
GitHub
Rolldown
Rust 驱动的高性能打包器
官网
GitHub
HEAD
一份你可以在 &lt;head&gt; 里设置的列表
官网
GitHub
类似于swig的资源
utopia
React 的集成设计和开发环境
官网
GitHub
wujie (无界)
腾讯推出的极致的微前端框架
官网
GitHub
min-cli
Min 小程序组件化解决方案
官网
GitHub
Koala
LESS/Sass/Compass/CoffeeScript编译工具
官网
GitHub
codelyzer
一组用于Angular TypeScript项目静态代码分析的tslint规则
官网
GitHub
closure-compiler
JavaScript检查器和优化器
点击进入
GitHub
Metro
针对 React Native的JavaScript模块打包器
官网
GitHub
electron-webpack
使用webpack编译Electron应用程序的脚本和配置
官网
GitHub
目录

手机扫一扫预览

首页 技术导航 在线工具 技术文章 教程资源 前端标签 AI工具集 前端库/框架

Copyright © 2018 Web前端开发网 All Rights Reserved. 分享编程学习资源(教程/框架/库)、在线工具、技术教程、内容以学习参考为主,助您解决各类实际问题,快速提升专业能力。