2016-08-03 3 views
0

handlebars.js에서 {{#each}}{{#if}}을 사용하여 JSON 파일의 데이터를 가져 왔습니다. 그러나 조건없이 데이터를 가져올 수있는 방법이 필요합니다. 나는 {{#if}} 진술을 할 필요가 없으며 하나의 데이터 세트 만 있으므로 {{#each}}이 필요하지 않습니다. 이것을 할 수있는 방법이 있습니까? {{#each}}는 작동하지만 단일 블록 데이터를 얻는 더 간단한 방법이있는 경우이를 사용하고 싶지 않습니다.{{#each}} 또는 {{#if}}을 사용하지 않고 Handlebars.js의 .json 파일에서 데이터를 가져 오는 방법은 무엇입니까?

저는 Grunt와 Handlebars를 사용하고 있고, 하나의 JSON 파일 이상에서 내 문서를 호출한다는 점에 유의해야합니다.

여기 내 코드입니다.

{{data.PaymentMethod}} 
    <table> 
    <tr> 
    <td> 
     <div>Payment Method</div> 
     <div>Card Number: {{CardNumber}}</div> 
     <div>Card Colder: {{CardHolder}}</div> 
     <div><a href="{{Link}}">Tracking</a></div> 
    </td> 
    </tr> 
    </table> 

그리고 내 JSON 파일 (data.json)입니다.

{ 
"PaymentMethod": [ 
     { 
      "CardNumber": "****", 
      "CardHolder": "John Doe", 
      "Link": "http://www.test.com" 
     } 
    ] 
} 
+0

를? – 76484

답변

1
<div>Card Number: {{data.PaymentMethod.0.CardNumber}}</div> 
<div>Card Colder: {{data.PaymentMethod.[0].CardHolder}}</div> 

당신은 너무처럼 액세스 할 수 있어야합니다. data.PaymentMethod은 배열이므로 해당 배열의 첫 번째 개체에 액세스해야합니다.

+0

나를 위해 작동하지 않았으므로 뭔가 빠뜨린 것 같습니다. 나는 Grunt를 실행 중이며 cmd 창에서 이것을 얻었습니다. 'ID'가 필요합니다. 'INVALID'가 있습니다. – jkupczak

+0

아 배열 값 앞에'.'가 누락되었습니다. 이 경우 괄호는 선택 사항이지만'with' 도우미를 사용하는 경우는 제외 – Craicerjack

+0

새 코드는 더 이상 오류를 throw하지 않지만 어느 오류도 throw하지 않습니다. :(파일 이름이 JSON 파일의 내용과 같음을 확인했습니다. 'with'도우미가 저에게는 효과적이지만, 그렇지 않습니다. 그 답을 얻을 수 있다면 상상할 수 있습니다. 코드. – jkupczak

1

당신은 배열에 단계별로 #with 도우미를 사용할 수 있습니다 : 당신이 당신의 템플릿을 호출하려면 어떻게

{{#with PaymentMethod.[0]}} 
    <div>Payment Method</div> 
    <div>Card Number: {{CardNumber}}</div> 
    <div>Card Colder: {{CardHolder}}</div> 
    <div><a href="{{Link}}">Tracking</a></div> 
{{/with}} 
+0

여러 개의 JSON 파일이 있습니다. . 귀하의 코드는 data.json 파일을 지정하지 않는 것으로 나타났습니다. 거기에'PaymentMethod'가 다른 곳에 있으면 잘못된 JSON 파일을 가져 오지 않도록해야합니까? – jkupczak

+0

@jimmykup 확실하지 않습니다. 무슨 뜻이야. 데이터 파일과 템플릿의 관계는 무엇입니까? – shmosel

+0

뭐야? 나는 내 문서의 다른 곳에서'data2.json'을 가져올 수 있다는 것을 의미합니다. 'data.json'과'data2.json' 둘 다'PaymentMethod'를 가질 수 있습니다 (서로 다른 데이터로). 코드에서 명시 적으로 data.json을 조사하도록 지정하지는 않습니다. 그렇게 할 수있는 것이 최선일까요? – jkupczak

관련 문제