WeChat 미니 프로그램의 wxml에 있는 Mustache 구문은 무시할 수 없기 때문에 iOS 프런트엔드를 한번도 해본 적이 없는 저를 혼란스럽게 만듭니다. . . 온라인으로 확인했어요. . . 녹음하세요.
Mustache란?
Mustache는 비즈니스 데이터(콘텐츠)와 사용자 인터페이스를 분리하기 위해 제작된 로직리스(가벼운 로직) 템플릿 파싱 엔진입니다. 특정 형식(일반적으로 표준 HTML 문서)으로. 화면을 렌더링하기 위해 동일한 템플릿에서 다른 함수를 호출하려는 경우 페이지를 렌더링할 때 전달된 매개변수가 사용자 정의된 경우 수동으로 판단할 수 있습니다.
예를 들어, 미니 프로그램의 wxml 코드:
// 这里的{{ }}就是Mustache的语法。 <text>{{userInfo.nickName}}</text>,
{{keyName}} {{{keyName}}} {{#keyName}} {{/keyName}} {{^keyName}} {{/keyName}} {{.}} {{!comments}} {{>partials}}
{{keyName}} 여러 개 상황
간단한 변수 대체: {{name}}
var data = { "name": "weChat" }; Mustache.render("{{name}} is excellent.",data); 返回 weChat is excellent.
변수에 html 코드가 포함되어 있습니다.
如:<br>、<tr>等而不想转义,可以在用{{&name}} var data = { "name" : "<br>weChat<br>" }; var output = Mustache.render("{{&name}} is excellent.", data); console.log(output); 返回:<br>weChat<br> is excellent. 去掉"&"的返回是转义为:<br>weChat<br> is excellent. 另外,你也可以用{{{ }}}代替{{&}}。
객체인 경우 해당 속성을 선언할 수도 있습니다
var data = { "name" : { "first" : "Chen", "last" : "Jackson" }, "age" : 18 }; var output = Mustache.render( "name:{{name.first}} {{name.last}},age:{{age}}", data); console.log(output); 返回:name:Chen Jackson,age:18
{{#keyName}} {{/keyName}}은 #으로 시작하고 /로 끝나서 블록을 나타냅니다. 현재 컨텍스트의 키 값을 기반으로 블록을 한 번 이상 렌더링합니다. . 그 기능은 매우 강력하며 if 및 foreach와 같은 기능도 추가할 수 있습니다.
var data = { "stooges" : [ { "name" : "Moe" }, { "name" : "Larry" }, { "name" : "Curly" }; var output = Mustache.render("{{#stooges}}<b>{{name}}</b>{{/stooges}}", data); console.log(output); 返回:<b>Moe</b> <b>Larry</b> <b>Curly</b>
{{^keyName}} {{/keyName}} 예외 출력
이 구문은 {{#keyName}}과 동일합니다. {{ /keyName} }비슷하지만 차이점은 keyName 값이 null, 정의되지 않음 또는 false인 경우에만 블록의 내용을 렌더링하고 출력한다는 것입니다. 예:
var data = { "name" : "<br>weChat<br>" }; var tpl = ‘{{^nothing}}没找到 nothing 键名就会渲染这段{{/nothing}}’; var output = Mustache.render(tpl, data); 返回:没找到 nothing 键名就会渲染这段
{{.}}는 전체 배열을 반복하는 데 사용되는 열거형을 나타냅니다. 예:
var data = { "product": ["Macbook ","iPhone ","iPod ","iPad "] } var tpl = '{{#product}} <p>{{.}}</p> {{/product}}'; var html = Mustache.render(tpl, data); 返回:<p>Macbook </p> <p>iPhone </p> <p>iPod </p> <p>iPad </p>
{{! }}는 주석 >로 시작하여 구조가 복잡한 경우 이 구문을 사용하여 복잡한 구조를 여러 개의 작은 하위 모듈로 나눌 수 있습니다. {{data}} 출력은 다른 특수 문자를 번역합니다. 내용을 그대로 유지하려면 {{{}}}, {{!这里是注释}}
를 나타냅니다. {{>partials}} var tpl = "<h1 id="namme">{{namme}}</h1> <ul>{{>msg}}</ul>"
var partials = {msg: "{{#msg}}<li>{{sex}}</li><li>{{age}}</li><li>{{hobit}}</li>{{/msg}
var html = Mustache.render(tpl, data, partials);
//输出:
<h1 id="xiaohua">xiaohua</h1>
{{{data}}} var tpl = '{{#msg}} <p>{{{age}}}</p> {{/msg}}'
//输出:
<p>22</p>
위 내용은 WeChat 미니 프로그램 개발을 위한 Mustache 구문의 코드 예제 공유의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

Dreamweaver Mac版
시각적 웹 개발 도구

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

WebStorm Mac 버전
유용한 JavaScript 개발 도구