smarty4js
0.1.8 • Public • Published Smarty4Js (Smarty For JavaScript)
What?
- JavaScript template engine
- Supports Smarty template syntax
- Used in Node.js
- Simple and powerful way to create and render a template
Why?
- Powerful
- Don't want to have two or more templates in your project
- Deep love for Smarty
When?
- When your synchronous templates is Smarty, and your Ajax templates will use the same template
- When you want to write Smarty templates with JavaScript anywhere
- When you want to put a lot of logic in JavaScript templates
- When you like Smarty very much
How?
- Single
- With Grunt
- With Gulp
- With EDP
- With all Node.js web subject
Usage
Install
Syntax
Most of Smarty syntax is supported.
Command line
// get tpl.js
smarty4Js compile a.tpl [b.tpl ...] [-c|--config=confPath -o|--output=outputPath]
-c | --config: Use user-define config file
-o | --output: Specify a destination directory
// get tpl.html
smarty4Js render a.tpl [b.tpl ...] -d|--data=jsonFilePath [-c|--config=confPath -o|--output=outputPath]
-d | --data : JSON data file path to render
-c | --config: Use user-defined config file
-o | --output: Specify a destination directory
// show current version
smarty4Js -v|--version
- if
render
, return html(demo.tpl.html
), if compile
, return jsTpl(demo.tpl.js
)
- jsTpl is a closure. It has a
render
method that you can use:
// amd and cmd
var template = require('demo.tpl');
template.render(data);
// you can also use <script>
used in Node.js
var Smarty = require('smarty4Js');
var s = new Smarty();
s.setBasedir(path);
var compiler = s.compile(tpl);
var ast = s.ast;
var js = compiler.getJsTpl();
var html = compiler.render(data);
var html = s.render(tpl, data);
var html = (new Function('return ' + js)()).render(data);
Versions
Version | Downloads (Last 7 Days) | Tag |
---|
0.1.8 | 28,788 | latest |
Version History
Package Sidebar
Install
Weekly Downloads