js 模板引擎 -Art Template
一个例子涵盖所有:
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>include demo</title>
<script src="template.js"></script>
</head> <body>
<div id="content"></div>
<div id="tagcontent"></div>
<script id="targettemplate" type="text/html">
<h1><%=title%></h1>
<%include('list')%> //嵌入子模板,id作为标识
<%include('Tvalue')%>
</script>
<script id="list" type="text/html">
<ul>
<%for(var i=0; i<listItems.length; i++){%>
<li>条目内容<%=i+1%> : <%=listItems[i]%></li>
<%}%>
</ul>
</script>
<script id="Tvalue" type="text/html">
<p>不转义:<%==trans%> or <%=#trans%></p>
<p>默认转义: <%=trans%></p>
</script> <script>
var data = {
title: '嵌入子模板',
listItems: ['文艺', '博客', '摄影', '电影', '民谣', '旅行', '吉他'],
trans:'<label style="color:#F00; font-weight:bold;">hello world!</label>'
};
var logintsorse='<h3>template.compile([id], source)将返回一个渲染函数。其中 id 参数是可选的,'
+'如果使用了 id 参数,可以使用template.render(id, data)渲染模板。</h3>'
+'使用arttemplate来编写:<%=title%>'; var html = template.render('targettemplate', data); var render = template.compile(logintsorse); //编译一段html代码成模板,render(data)把数据render进去
var compilehtml = render(data); document.getElementById('content').innerHTML = html+compilehtml;
</script> <script id="customTag" type="text/html">
<h1><!--[= header]--></h1>
<ul>
<!--[for(var i=0; i<tag.length; i++){]-->
<li>条目内容<!--[=i+1]--> : <!--[=tag[i]]--></li>
<!--[}]-->
</ul>
</script>
<script>
template.openTag = '<!--[';
template.closeTag = ']-->';
var listdata = {
header : 'your study list',
tag : ['算法导论','linq','c#','jquery','django','python']
};
var resulthtml = template.render ('customTag', listdata);
document.getElementById('tagcontent').innerHTML = resulthtml; //
</script>
</body> </html>
js 模板引擎 -Art Template的更多相关文章
- doT js 模板引擎【初探】要优雅不要污
js中拼接html,总是感觉不够优雅,本着要优雅不要污,决定尝试js模板引擎. JavaScript 模板引擎 JavaScript 模板引擎作为数据与界面分离工作中最重要一环,越来越受开发者关注. ...
- JS 模板引擎 BaiduTemplate 和 ArtTemplate 对比及应用
最近做项目用了JS模板引擎渲染HTML,JS模板引擎是在去年做项目是了解到的,但一直没有用,只停留在了解层面,直到这次做项目才用到,JS模板引擎用了两个 BaiduTemplate 和 ArtTemp ...
- js模板引擎
js模板引擎包括如下: template 官方参考:http://aui.github.io/artTemplate BaiduTemplate 官方参考:http://baidufe.github. ...
- 调研js模板引擎
js模板引擎越来越多的得到应用,如今已经出现了几十种js模板引擎,国内各大互联网公司也都开发了自己的js模板引擎(淘宝的kissy template,腾讯的artTemplate,百度的baiduTe ...
- js模板引擎介绍搜集
js模板引擎越来越多的得到应用,如今已经出现了几十种js模板引擎,国内各大互联网公司也都开发了自己的js模板引擎(淘宝的kissy template,腾讯的artTemplate,百度的baiduTe ...
- js模板引擎--artTemplate
js模板引擎--artTemplate 以前研究过一段时间的handlebars,但因为其渲染性能略逊于腾讯的artTemplate(在artTemplate的GitHub官网上有推荐的性能测试地址) ...
- 百度JS模板引擎 baiduTemplate 1.0.6 版
A.baiduTemplate 简介 0.baiduTemplate希望创造一个用户觉得“简单好用”的JS模板引擎 注:等不及可以直接点左侧导航中的”C.使用举例“,demo即刻试用. 1.应用场景: ...
- 浅析js模板引擎
js模板引擎越来越多的得到应用,如今已经出现了几十种js模板引擎,国内各大互联网公司也都开发了自己的js模板引擎(淘宝的kissy template,腾讯的artTemplate,百度的baiduTe ...
- JS模板引擎:基于字符串拼接
目的 编写一个基于字符串拼接的js模板引擎雏形,这里并不会提供任何模板与数据的绑定. 基本原理 Javascript中创建函数的方式有多种,包括: 1. var func = function () ...
随机推荐
- Vue--事件处理(逐个学习事件修饰符)
.capture .self .once 主要学习这三个事件修饰符的用法先来看看capture capture即是给元素添加一个监听器,当元素发生冒泡时,先触发带有该修饰符的元素.若有多个该修饰符,则 ...
- demo board boot mode
demo扩展板 QSPI0_IO0_MIO2--A13--PS-MIO2 QSPI0_IO0_MIO3--A14--PS-MIO3 QSPI0_IO0_MIO4--B11--PS-MIO4 QSPI0 ...
- Cytoscape基础教程笔记
昨天开始学用Cytoscape,其tutorial分为两个部分,基础的和高级 的.基础教程又分成了四课:Getting Started.Filters & Editor.Fetching Ex ...
- C# 枚举的声名和使用
namespace xxxxxx { public enum EnumTextHAlign { Left = , Center = , Right = } } using xxxxxx;
- 【8.0.0_r4】AMS分析(十七)(ActivityManagerService.java下)
代码位于frameworks/base/services/core/java/com/android/server/am/,一共有七十个文件. Java源码位于package com.android. ...
- postman-Runner
postman Runner配置 preview查看参数
- python之字符串切分
在工作中,经常遇到字符串切分,尤其是操作linux命令,返回一段文本,如下面这种格式 Filesystem Size Used Avail Use% Mounted on /dev/vda1 40G ...
- HashMap的底层原理 cr:csdn:zhangshixi
1. HashMap概述: HashMap是基于哈希表的Map接口的非同步实现.此实现提供所有可选的映射操作,并允许使用null值和null键.此类不保证映射的顺序,特别是它不保证该顺序恒久不变 ...
- java.lang.RuntimeException: Unable to instantiate activity ComponentInfo异常(转)
转:http://blog.csdn.net/gaohongijj/article/details/8010869/ 不能实例化activity有如下三种情况: 1.没有在Manifest.xml 清 ...
- xcodebuild 自动化打包
altool 文档 使用xcode自带的xcodebuild 命令通过脚本进行打包 打包->导出ipa, 两行关键的脚本代码 1.Archive xcodebuild archive -arch ...