다음은 jsfiddle입니다.Dust.js를 사용한 클라이언트 측 템플리트의 조건문
내가 출력 dust.js를 사용하는 사람들의 이름을 모두 원하는 경우{
"people": [
{
"name": "Bob",
"eye-color": "Green"
},
{
"name": "Jill",
"eye-color": "Blue"
},
{
"name": "James",
"eye-color": "Green"
}
]
}
, 내가 지금처럼 템플릿을 설정합니다 :
<ul>
{#people}
<li>{name}</li>{~n}
{/people}
</ul>
을하지만, 어떤 경우 :
나는이 JSON 데이터를 말해봐1) "녹색"눈을 가진 사람들의 이름 만 출력하고 싶습니까? conditionals in dust을 사용하여이를 수행 할 수 있습니까?
2) 나는 관계없이 눈 색깔의
3) 난 단지, 출력 번째 사람의 이름에 관계없이 눈 색깔의 원, 출력 처음 두 이름을 원
편집 : 네 번째 추가 및 다섯 번째 시나리오 :
4) I은 단지 두 번째와 세 번째의 이름을 표시하고 싶은 (즉, 지수 X인덱스 Y)에
5) 녹색 눈을 가진 사람들의 처음 두 이름 만 출력하고 싶습니다. (사람들의 목록이 위에 표시된 3 개보다 훨씬 길었고 표시되지 않는 더 많은 녹색 눈을 가진 사람들을 포함하여).
그리고 하나 개 더 질문 :이 포함되어 있는지 확인하는 {@eq}를 사용하는 방법이 있나요
{ "tags": ["tag1", "tag2", "tag3"] }
:이
내 JSON은 다음과 같은 키/값 쌍의 말 "tag2"예를 들면?
awesome! 정말 고마워. 2 개의 빠른 추가 기능 : 1) 이름이 3 개 이상인 경우에만 이름 2-3을 어떻게 표시합니까? 2) {~ n}은 무엇을합니까? 코드가 없으면 정상적으로 작동하는 것 같습니다. – dougmacklin
1)'{@gt key = $ idx value = 0} '안에'{@lt key = $ idx value = 3}'을 중첩 할 수 있습니다. 2)'{~ n}' Dust가 기본적으로 제거되는 새로운 라인을 추가합니다. 당신은 아마 그것을 필요로하지 않습니다. – smfoote
감사합니다 smfoote! 두 가지 시나리오와 다른 관련 질문을 추가했습니다. 가능한 경우 알려 주시면 알려 드릴까요?그게 다예요, 약속드립니다 : – dougmacklin