`

[JS Render] JS Render 模板语法

 
阅读更多
1.
{{:key}}
获取值

~root:   顶级对象
#item:   当前对象
#index:  当前索引

2.
{{>untrustedValue}}
获取HTML编码后的值

3.
{{include tmpl=... /}}
引用模板

4.
{{for ...}}
数组遍历

5
{{props billing.address}}
  {{>key}}: {{>prop}}
{{/props}}
对象遍历

6
{{if firstExpression}}
    render this if the firstExpression is true
{{else secondExpression}}
    else render this if the secondExpression is true
{{else}}
    else render this
{{/if}}

{{for members}}
    Member Name: {{:name}}
{{else}}
    There are currently no members...
{{/for}}


{{tabs tabCaption="First Tab"}}
    first tab content
{{else tabCaption="Second Tab"}}
    second tab content
{{/tabs}}

条件分支

7.
{{*: ...}}
执行JS代码,当$.views.settings.allowCode(true);时.

{{*: ...}}
执行JS代码并输出结果,当$.views.settings.allowCode(true);时.

8.
{{!-- ... --}}
注释

9.
自定义标签
function renderBoldP(value) {
  return "<p><b>" + value + "</b></p>";
}

$.views.tags("boldp", renderBoldP);

10.

访问上下文

~root

11.
自定义转换器
$.views.converters("upper", function(val) {
  // Convert data-value or expression to upper case
  return val.toUpperCase();
});

{{upper:...}}

12.
{{:address.street onError="Address unavailable"}}
异常处理

13.
全局工具类
var myHelpers = {format: myFormatFunction};

$.views.helpers(myHelpers);
{{:~format(name, true)}}

模板级工具类
var myHelpers = {format: myFormatFunction};


$.templates({
  mytmpl: {
    markup: "#personTemplate",
    helpers: myHelpers
  }
});
{{:~format(name)}}
{{:~format(name, true)}}

$.views.helpers(...)

分享到:
评论

相关推荐

    JsRender.zip(jsrender.js和jsrender.min.js合集)

    1. **简洁的语法**:JsRender 使用类似于Mustache的标记语言,提供易于理解和使用的模板语法。例如,`{{ }}` 用于包裹模板表达式,`{{:}}` 用于显示数据,`{{&gt;}}` 用于嵌入子模板等。 2. **分离视图和数据**:通过...

    jquery-jsrender.js

    JSRender 提供了一套易于学习和使用的模板语法,允许开发者将数据和逻辑与视图模板分离,从而实现数据驱动的开发模式。 **主要特点:** 1. **简洁的语法**:JSRender 使用类似于 Handlebars 或 Mustache 的双大...

    JsRender 的使用demo

    1. **模板语法**: JsRender 使用 `{{ }}` 符号作为模板标记,使得模板代码在HTML中清晰易读。例如,`{{:value}}` 用于输出数据对象的属性值。 2. **数据绑定**: JsRender 提供了强大的数据绑定能力,允许在模板中...

    jsrender.js

    JSRender的模板语法以`{{`和`}}`作为标记,用于包裹模板表达式和指令。例如: ```html {{:value}} &lt;!-- 输出变量value的值 --&gt; {{if condition}}...{{/if}} &lt;!-- 条件语句 --&gt; {{for items}}...{{/for}} &lt;!-- 循环...

    前端项目-jsrender.zip

    JSRender的模板语法简洁且直观,使用双大括号`{{ }}`包裹表达式,使得代码易于阅读和编写。例如,`{{:name}}`用于输出变量,`{{if condition}}...{{/if}}`用于条件判断,`{{for items}}...{{/for}}`用于循环迭代。...

    jquery-jsrender.js 下载

    JSRender的模板语法基于`{{ }}`双大括号,其中包含了各种控制结构和表达式。例如: - `{{:property}}`:渲染对象的`property`属性值。 - `{{if condition}}...{{/if}}`:条件语句,当`condition`为真时,渲染块内的...

    jQuery模板 :(二) JSRender之内置的模板标签

    JSRender 使用双大括号 `{{ }}` 作为其模板语法的基础。这对大括号用于包围模板表达式,可以是变量、函数调用或控制结构。 **2. `{{: value}}` 输出标签** 这是最基础的标签,用于输出数据绑定的值。例如,`{{: ...

    JQuery模板 :(六)JsViews - 基于JsRender并具有动态绑定功能的模板

    JsRender 是一个轻量级的模板引擎,它允许开发者通过声明式模板语法来渲染数据。模板中的表达式和控制结构可以灵活地嵌入HTML中,使得静态HTML文档能够动态响应数据变化。 **2. JsViews的引入** 在项目中引入...

    JQuery模板 :(九) JsRender之JsViews中的JsObserverable

    JsRender提供了一套丰富的模板语法,包括条件语句(`{{if}}`, `{{else}}`)、循环语句(`{{for}}`)、以及辅助函数调用(`{{:~myHelper(data)}}`)等。这些语法使得模板编写更加灵活和强大。 **JsRender和JsViews的...

    基于jQuery的JavaScript模版引擎JsRender使用指南

    JsRender是一款基于jQuery的JavaScript模板引擎,设计目标是提供简单直观、功能强大且可扩展的模板处理方案。它以其高效性能而著称,尤其适用于数据绑定和动态内容渲染。虽然JsRender的官方文档详尽,但在实际应用中...

    JsRender for object语法简介

    2. JsRender模板语法:JsRender的基本语法包括数据绑定、条件判断、循环遍历等。其中{{forArray}}是循环遍历数组的标准用法,而{{forObject}}则是一个特殊用法,它涉及到了如何在模板中操作对象。 3. for object...

    jsRender-experiment:前端模板引擎——JSRender(实验)

    JSRender 是一个轻量级、高性能的JavaScript模板引擎,由Microsoft的MVC团队开发并开源。它旨在提供一种简洁、灵活的方式来将数据绑定到HTML视图,使得动态生成和更新DOM变得简单易行。在本实验中,我们将深入探讨JS...

    一个jQuery插件用于数据绑定的HTMLRender模板引擎

    2. **模板语法**:HTMLRender使用简单的模板语法,如`{{expression}}`,在HTML中嵌入JavaScript表达式,以实现数据的插入、条件判断和循环遍历等操作。 3. **指令系统**:HTMLRender提供了一系列内置指令,如`if`、...

    vue props传入render函数,实现动态组件嵌套

    相比模板语法,`render`函数提供了更高的灵活性,可以直接控制DOM的构建。它的基本格式如下: ```javascript render(h) { // h 是 createElement 函数的别名,用于创建Vue VNode return h(Component, { props: ...

    JavaScript - Render HTML With Bootstrap Using Node.js.zip

    这个压缩包文件"JavaScript - Render HTML With Bootstrap Using Node.js"提供了一个实际的项目示例,帮助我们理解这一技术栈的整合应用。 首先,让我们了解每个组成部分的基础知识: 1. **JavaScript**:...

    vue+render 实现 动态加载组件 后面会用来做运营活动模板组件

    相比于使用模板语法(`&lt;template&gt;`),`render`函数提供了更底层的控制,可以实现更复杂的渲染逻辑。它的基本格式如下: ```javascript render(h) { return h(Component, data, children); } ``` 其中,`h`是Vue...

    mustache.js javascript模板引擎

    ### 一、模板语法 1. **变量输出**:在双大括号`{{ }}`内,可以直接插入变量名,例如`{{name}}`,当模板被渲染时,会替换为对应的变量值。 2. **标签分隔**:Mustache支持三种标签类型:`{{ }}`(未被修饰的标签)...

    render html

    - 简洁的模板语法:易于理解和使用。 - 强大的功能集:支持条件语句、循环结构等。 ### 3. 使用NVelocity进行HTML渲染 #### 3.1 基本步骤 1. **初始化VelocityEngine**:设置必要的属性,并初始化引擎。 2. **...

    JsRender实用入门教程

    模板语法以`{{ }}`包围,其中包含了各种指令,如`{{for}}`用于循环,`{{if}}`和`{{else}}`用于条件判断。例如: ```html {{for items}} {{if active}} &lt;p&gt;{{:name}} {{else}} &lt;p&gt;{{:name}} (inactive) {{/if}}...

    Mustache模板语法教程

    《Mustache模板语法详解》 Mustache是一种轻逻辑的模板解析引擎,它的独特之处在于它能够在JavaScript、PHP、Python、Perl等多种编程语言中通用。这种跨语言的特性使得Mustache成为构建可复用且易于维护的Web应用的...

Global site tag (gtag.js) - Google Analytics