zoukankan      html  css  js  c++  java
  • arltemplete模板

    artTemplate 简介语法模板

    <scriptsrc="dist/template.js"></script>

    下载(https://raw.github.com/aui/artTemplate/master/dist/template.js)

    编写模版

    <scriptid="test"type="text/html"><h1>{{title}}</h1><ul>{{eachlistasvaluei}}<li>索引 {{i + 1}} :{{value}}</li>{{/each}}</ul></script>

    渲染数据

    var data = {
        title: '标签',
        list: ['文艺', '博客', '摄影', '电影', '民谣', '旅行', '吉他']
    };
    var html = template('test', data);
    document.getElementById('content').innerHTML = html;

    简介语法

    {{ifadmin}}{{include 'admin_content'}}{{eachlist}}<div>{{$index}}. {{$value.user}}</div>{{/each}}{{/if}}

    artTemplate 原生 js 模板语法版

    <script type="text/template" id="xjj">//使用模板样式
    <ul>
    <% for(var i = 0 ; i < list.length ; i ++){%>//可以直接传对象的属性 //list为对象的属性

    <li>我的名字是:<b><%=list[i].name%></b>我的年龄是:<b><%=list[i].age%></b>。</li>

    <%};%>
    </ul>
    </script>
    <script src="js/template-native.js"></script>
    <script>
    /*准备数据*/
    var data = {
    list:[
    {name:'xjj1',age:10},
    {name:'xjj2',age:12},
    {name:'xjj3',age:16},
    {name:'xjj4',age:40}
    ]
    }
    /*解析数据成html {model:''}*/
    var html = template('xjj',data);

    document.querySelector('.box').innerHTML = html;

     

    在页面中引用模板引擎:

    <scriptsrc="dist/template-native.js"></script>

    下载(https://raw.github.com/aui/artTemplate/master/dist/template-native.js)

    表达式

    <% 与 %> 符号包裹起来的语句则为模板的逻辑表达式。

    输出表达式

    对内容编码输出:

    <%=content%>

    不编码输出:

    <%=#content%>

    编码可以防止数据中含有 HTML 字符串,避免引起 XSS 攻击。

    逻辑

    支持使用 js 原生语法

    <h1><%=title%></h1>
    <ul>
        <%for(i = 0; i < list.length; i ++) {%>
            <li>条目内容 <%=i + 1%> :<%=list[i]%></li>
        <%}%>
    </ul>

    模板不能访问全局对象,公用的方法请参见文档 辅助方法 章节 模板包含表达式

    用于嵌入子模板。

    <%include('template_name') %>

    子模板默认共享当前数据,亦可以指定数据:

    <%include('template_name', news_list) %>

    辅助方法

    使用template.helper(name, callback)注册公用辅助方法,例如一个基本的 UBB 替换方法:

    template.helper('$ubb2html', function (content) {
        // 处理字符串...
        return content;
    });

    模板中使用的方式:

    <% $ubb2html(content)%>
  • 相关阅读:
    Oracle dbms_job
    ORACLE 表空间扩展
    面试技术岗,你真能讲明白技术吗?
    阿里巴巴高级技术专家章剑锋:大数据发展的 8 个要点
    技术管理管什么
    如何做到进人精挑细选,裁人快刀斩乱麻
    数据脱敏
    美团数据治理平台
    impala教学视频
    任正非的讲话
  • 原文地址:https://www.cnblogs.com/zhanggaojun/p/5743054.html
Copyright © 2011-2022 走看看