2017-01-16 6 views
0

내 데이터를 렌더링하기 위해 콧수염 템플릿을 사용하고 있습니다. 날짜 필드 "researchdate"가 있고 조건부 렌더링이 필요합니다. 연구 날짜가 비어 있지 않고 2 주 이상인 경우에만 앵커 태그를 렌더링해야합니다. 여기콧수염 날짜 필드에 조건이있는 경우

{{#if researchDate}} 
      <a href="/test" class="some-class" title="my title">R</a> 
     {{/if}} 

날짜가 비어 있거나하지 않으면 내가 확인할 수 있지만 내가 2 주 이전인지 여부를 어떻게 확인할 수 있습니까?

답변

0

MustacheJS는 논리가없는 템플릿 시스템입니다 (이러한 단어는 github 페이지에 붙여 넣습니다 ...). 귀하의 접근 방식을 수행 할 수 없습니다. 당신은 두 가지 옵션이 ...

옵션 객체 리터럴 기준이 충족되는 경우 1

만 뷰를 렌더링 할 수 있습니다.

var renderBool = ($(a.researchDate).val() !== null)?true:false; 
if (renderBool){ 
    mustache.render(...); 
} 

옵션 2

당신이 콧수염의 JS 맛을 사용하는 가정, 당신은 기준이 충족 될 때까지 뷰를 숨기기 위해 jQuery를 사용할 수 있습니다. 이 과정은 이후 즉시 으로 끝나고보기를 렌더링했습니다.

var $researchDate = $(a.researchDate); 
if (!$researchDate.val()){ 
    $researchDate.hide(); 
} 

위의 내용은 복사/붙여 넣기 문제가 아닙니다. 보기에서 앵커 태그에 클래스/ID를 추가해야합니다. 이 답변은 또한 jQuery에 의존성이있는 MustacheJS의 Javascript 형식을 사용한다고 가정합니다.