WeChat mini program Mustache syntax detailed explanation
WeChat mini program has become very popular recently, which is good news for front-end development programmers. Here we mainly record the WeChat mini program Mustache syntax.
Mustache syntax is used in wxml for small program development. Therefore, it is very necessary to study Mustache.
What is Mustache? Mustache is a logic-less (light logic) template parsing engine, which is produced to separate the user interface from business data (content). It can generate documents in a specific format, usually standard HTML document. For example, the code in the wxml of the mini program:
{{userInfo.nickName}}, where {{ }} is the syntax of Mustache.
1. Mustache’s template syntax is very simple, just a few:
{{keyName}}
{{{keyName}}}
{{#keyName}} {{/keyName}}
{{ ^keyName}} {{/keyName}}
{{.}}
{{!comments}}
{{>partials}}
1, {{keyName}}
⑴ Simple variable substitution :{{name}}
var data = { "name": "weChat" };
Mustache.render("{{name}} is excellent.", data);
return weChat is excellent.
⑵ If the variable contains html code, such as:
, etc. without escaping, you can use {{&name}}
var data = { "name" : " weChat " }; var output = Mustache.render("{{&name}} is excellent.", data); console.log(output);
Return:
weChat
is excellent.
Remove the "&" The return is escaped as:
weChat
is excellent.
In addition, you can also use {{{ }}} instead of {{&}}.
⑶ If it is an object, it can also declare its properties
var data = { "name" : { "first" : "Chen", "last" : "Jackson" }, "age" : 18 }; var output = Mustache.render( "name:{{name.first}} {{name.last}},age:{{age}}", data); console.log(output);
Return: name: Chen Jackson, age: 18
2. {{#keyName}} {{/keyName}}
Start with #, Ending with / indicates a block, which renders the block one or more times based on the key value in the current context. It is very powerful and has functions similar to if and foreach.
var data = { "stooges" : [ { "name" : "Moe" }, { "name" : "Larry" }, { "name" : "Curly" } ] }; var output = Mustache.render("{{#stooges}}{{name}}{{/stooges}}", data); console.log(output);
Return: Moe
Larry
Curly
3, {{^keyName}} {{/keyName}}
This syntax is similar to {{#keyName}} {{/keyName}} , the difference is that it only renders and outputs the block content when the keyName value is null, undefined, or false. For example:
var data = { "name" : " weChat " }; var tpl = ‘{{^nothing}}没找到 nothing 键名就会渲染这段{{/nothing}}'; var output = Mustache.render(tpl, data);
Return: If nothing is found, the key name will be rendered.
4. {{.}}
{{.}} represents an enumeration, which can output the entire array in a loop, for example:
var data = { "product": ["Macbook ","iPhone ","iPod ","iPad "] } var tpl = '{{#product}} {{.}} {{/product}}'; var html = Mustache.render(tpl, data);
Return:
Macbook
iPhone
iPod
iPad
5, {{! }} indicates annotation
6, {{>partials}}
starts with > expressor Module, when the structure is complex, we can use this syntax to split the complex structure into several small sub-modules.

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 Linux new version
SublimeText3 Linux latest version

Dreamweaver Mac version
Visual web development tools

ZendStudio 13.5.1 Mac
Powerful PHP integrated development environment

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

SublimeText3 Mac version
God-level code editing software (SublimeText3)