ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
[TOC] # 介绍 art-template 是一个简约、超快的模板引擎。 它采用作用域预声明的技术来优化模板渲染速度,从而获得接近 JavaScript 极限的运行性能,并且同时支持 NodeJS 和浏览器。[在线速度测试](../../rendering-test/)。 ## 特性 1. 拥有接近 JavaScript 渲染极限的的性能 2. 调试友好:语法、运行时错误日志精确到模板所在行;支持在模板文件上打断点(Webpack Loader) 5. 支持 Express、Koa、Webpack 6. 支持模板继承与子模板 7. 浏览器版本仅 6KB 大小 <!--这一句非中文版文档请删除--> [art-template@4.0 新特性一览](https://github.com/aui/art-template/issues/369) ## 模板 art-template 同时支持两种模板语法。标准语法可以让模板更容易读写;原始语法具有强大的逻辑处理能力。 **标准语法** ```html {{if user}} <h2>{{user.name}}</h2> {{/if}} ``` **原始语法** ```html <% if (user) { %> <h2><%= user.name %></h2> <% } %> ``` 原始语法兼容 [EJS](http://ejs.co)、[Underscore](http://underscorejs.org/#template)、[LoDash](https://lodash.com/docs/#template) 模板。 ## 渲染模板 ```js var template = require('art-template'); var html = template(__dirname + '/tpl-user.art', { user: { name: 'aui' } }); ``` ## 核心方法 ```js // 基于模板名渲染模板 template(filename, data); // 将模板源代码编译成函数 template.compile(source, options); // 将模板源代码编译成函数并立刻执行 template.render(source, data, options); ```