jossmp/jquery-tmpl-php

一个用于服务器端渲染jQuery模板的PHP库

v1.0.1 2019-10-26 01:46 UTC

This package is not auto-updated.

Last update: 2024-09-23 07:19:55 UTC


README

一个用于服务器端渲染jQuery模板的PHP库。受 jQuery-tmpl.Net 启发,当然还有 jQuery Templates

用法

jQuery-tmpl-PHP 编写用于在一定程度上模仿 jQuery Templates 的方法调用。包含一个示例文件,展示了各种用法。

jQueryTmpl() 对象支持以下方法调用

  • getHtml()
    • 参数:无
    • 目的:返回缓冲区中的生成HTML并清除它。
  • renderHtml()
    • 参数:无
    • 目的:打印缓冲区中的生成HTML并清除它。
  • template(name, jQueryTmpl_Markup)
    • 参数
      • 模板的字符串名称。
      • 要编译的标记。
    • 目的:编译给定的模板标记。
  • tmpl(name/jQueryTmpl_Markup, jQueryTmpl_Data)
    • 参数
      • 预编译模板的字符串名称或要编译的标记。
      • 应用于模板的数据。
    • 目的:使用给定数据渲染模板并将其存储在输出缓冲区中。

支持的标签

  • ${property}{{= property}}

    支持简写 ${}{{= }}。将打印出提供的数据对象中指示属性的值。支持嵌套属性解析。但是目前不支持表达式/函数评估。(见路线图。)

  • {{html property}}

    渲染属性的值而不进行HTML编码。否则与 ${} 相同。

  • {{each(index, value) property}}...{{/each}}

    为提供的数据对象中属性值中的每个项目渲染标签内容的实例。可以可选地传递自定义的索引和值变量。

  • {{if property}}...{{/if}

    如果提供的数据对象中的属性值评估为 true,则渲染标签的内容。这是javascript-style评估,所以 0、null、空字符串都是 false

  • {{else property}}

    用于在 {{if}} 标签内评估 else 条件。属性值是可选的。

  • {{tmpl(data, options) template}}

    此标签接受数据和选项作为可选参数。标签将渲染现有的已渲染模板(使用 template() 方法)并替换位置。当传递数据属性时,仅传递由该属性引用的数据部分到指定的模板。选项目前不受支持。

  • {{! comments}}

    此标签在官方jQuery网站上似乎没有文档,但在代码中存在。这里保留了相同的功能,评论只是简单地被丢弃在渲染输出中。

路线图

以下是我待办事项列表中的内容。

  • 支持JavaScript表达式评估。
  • 支持 {{wrap}}