mediawiki学习笔记1————mustache
介绍
Mustache是一个logic-less(轻逻辑)模板解析引擎,它是为了使用户界面与业务数据(内容)分离而产生的,它可以生成特定格式的文档,通常是标准的HTML文档。
著名的mediawiki 魔术字原理也是mustache
使用
mediawiki不用知道如何去调试,但是还是放在这里,一些基本命令
mustache <YAML> <FILE>
mustache --compile <FILE>
mustache --tokens <FILE>
开始第一次尝试
The command processes a Mustache template preceded by YAML frontmatter from standard input and prints one or more documents to standard output
该命令处理标准输入中前面带有 YAML frontmatter 的 Mustache 模板,并将一个或多个文档打印到标准输出
YAML frontmatter begins with on a single line, followed by YAML, ending with another on a single line e.g.
YAML frontmatter 以单行开头,后面是 YAML,最后以单行结尾,例如:
1 | --- |
If you are unfamiliar with YAML, it is a superset of JSON. Valid JSON should work fine.
如果您不熟悉 YAML,它是 JSON 的超集。 有效的 JSON 应该可以正常工作。
After the frontmatter should come any valid Mustache template
在 frontmatter 之后应该是任何有效的 Mustache 模板。
例如:
1 | {{#names}} |
现在让我们将它们结合起来。
将上面的yaml存在data.yml,再将上面的mustache存在template.mustache,执行mustache data.yml template.mustache
,输出:
1 | Hi chris! |
If you provide multiple YAML documents (as delimited by ), your template will be rendered multiple times. Like a mail merge.
如果您提供多个 YAML 文档(由 分隔),您的模板将被渲染多次。 就像邮件合并一样……
例如将以下代码存在 data.yml
1 | --- |
在 template.mustache写入:
1 | Hi {{name}}! |
执行mustache data.yml template.mustache
你会得到
1 | Hi chris! |