Nodejs 推荐一款开源的Javascript模板引擎,希望大家多提意见,一起努力给做好
Nodejs 推荐一款开源的Javascript模板引擎,希望大家多提意见,一起努力给做好
#whiskers.js
资源地址:https://github.com/abcrun/whiskers
whiskers.js是一个Javascript模板组件,它可以用来将一段 特殊标记的字符串(whiskers模板) 转换为相应的HTML代码。
随着AJAX的兴起,一些服务器端的工作转移到了客户端上。以微博为例,客户端向服务器发送请求来获取最新消息,当客户端收到最新的消息后,会将这些数据按照一定的结构组装成HTML代码,然后回填到页面中。而whiskers.js就是可以用来将从后台获取到数据按照设定好的HTML结构( whiskers模板 )转换成HTML代码的模板组件。
下面是一个简单的示例:
快速预览
var template = 'div#wrapper>ul.lists[data-type=news]>li*2>span>{{=Hello World}}'; //whiskers模板
Whiskers.render(template);
将会生成如下HTML代码:
<div id="wrapper">
<ul class="lists" data-type="news">
<li><span>Hello World</span></li>
<li><span>Hello World</span></li>
</ul>
</div>
Nodejs 推荐一款开源的JavaScript模板引擎,希望大家多提意见,一起努力给做好
在现代Web开发中,前端模板引擎是一个非常重要的工具。它能够帮助我们更高效地构建用户界面。今天我推荐一款非常优秀的开源JavaScript模板引擎——Whiskers.js。
Whiskers.js
资源地址
简介
Whiskers.js 是一个轻量级且功能强大的JavaScript模板引擎。它允许你使用一种特殊的语法将字符串(称为 Whiskers模板)转换成相应的HTML代码。这使得前端开发更加灵活和高效。
使用场景
随着AJAX技术的广泛应用,越来越多的数据交互发生在客户端。例如,在一个微博应用中,客户端需要向服务器请求最新的消息,并将其显示在页面上。这时,Whiskers.js 可以帮助你将从服务器获取的数据按照预设的HTML结构转换成实际的HTML代码。
示例代码
快速预览
// 定义一个Whiskers模板
var template = 'div#wrapper>ul.lists[data-type=news]>li*2>span>{{=Hello World}}';
// 渲染模板
console.log(Whiskers.render(template));
输出结果
<div id="wrapper">
<ul class="lists" data-type="news">
<li><span>Hello World</span></li>
<li><span>Hello World</span></li>
</ul>
</div>
解释
div#wrapper
:定义一个ID为wrapper
的div
元素。ul.lists[data-type=news]
:在div
内部定义一个类名为lists
的ul
列表,并设置一个自定义属性data-type
为news
。li*2
:定义两个li
列表项。span>{{=Hello World}}
:每个li
列表项内部包含一个span
标签,并且显示文本Hello World
。
通过上述示例,你可以看到Whiskers.js 提供了一种简洁且直观的方式来创建复杂的HTML结构。希望你能试用一下,并提出宝贵的意见,共同改进这款优秀的开源项目!
Node.js 推荐一款开源的JavaScript模板引擎
大家好!我在这里推荐一款非常优秀的开源JavaScript模板引擎——Nunjucks。Nunjucks 是一个功能强大的模板引擎,最初是为Python设计的,但现在它已经移植到了Node.js平台,并且非常适用于前端和后端开发。
资源地址
简介
Nunjucks 提供了一种简单而强大的方式来创建和渲染模板。你可以使用它来动态生成HTML、JSON、XML等格式的数据。它的语法简洁易懂,并且支持很多高级特性,如继承、宏、过滤器等。
示例代码
安装 Nunjucks
首先,你需要通过npm安装Nunjucks:
npm install nunjucks
基本使用示例
模板文件 (example.njk)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{{ title }}</title>
</head>
<body>
<h1>{{ greeting }}</h1>
<ul>
{% for item in items %}
<li>{{ item.name }} - {{ item.price | currency }}</li>
{% endfor %}
</ul>
</body>
</html>
渲染模板
const nunjucks = require('nunjucks');
// 设置模板文件夹路径
nunjucks.configure('templates', {
autoescape: true,
watch: false
});
// 渲染模板
const result = nunjucks.render('example.njk', {
title: '商品列表',
greeting: '欢迎来到我们的商店',
items: [
{ name: '苹果', price: 5 },
{ name: '香蕉', price: 3 }
]
});
console.log(result);
上面的代码将会输出如下HTML:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>商品列表</title>
</head>
<body>
<h1>欢迎来到我们的商店</h1>
<ul>
<li>苹果 - ¥5.00</li>
<li>香蕉 - ¥3.00</li>
</ul>
</body>
</html>
总结
Nunjucks 是一个非常灵活且强大的模板引擎,适合各种规模的项目。它的文档也非常详尽,使用起来非常方便。希望这款模板引擎能给大家带来便利!
感谢大家的支持和反馈!