2017-05-08 15 views
1

私は、webconsole上のpostgressから来るjsonデータをdustjsを通してレンダリングしたいと思います。 私のデータには、どのように私はdustjsでこのデータのためのテンプレートを書くことができdustjsテンプレート形式のjsonオブジェクトの配列?

[ 
    { 
    "a": "123a", 
    "b": "fdhd", 
    }, 
    { 
    "a": "123a", 
    "b": "fdhd", 
    } 
] 

(オブジェクトキーなし)のようなものです。次のように私が書いた テンプレートは次のとおりです。

{#.}\ 
<tr> 
<td>{a}</td> 
<td>{b}</td> 
</tr>{~n}\ 
{:else}\ 
    <p>Humm...</p>\ 
{/.}\ 

が、私を助けに行くのではありません。 webconsole上の には、テーブルで利用可能なデータが表示されません。 私を助けてください..私はダストjsとajaxクエリに新しいです。 私はこのようにJavaScriptでこのデータをレンダリングしています

$(document).ready(function(){ 
    $.ajax({ 
     type: 'GET', 
     url: 'http://localhost:1517/abc', 
     data: data, 
     dataType: 'application/json', 
     success: function (data) { 
      dust.render('templatedata', data , function(err, out) { 
      document.getElementById('data-from-dust').innerHTML = out; }) 
     } 
     }); 


    }); 

答えて

0

あなたはあなたのデータのか?あなたがレンダリングする前にconsole.log(JSON.stringify(data, null, ' '))となったらどうなりますか?

バージョン2.75では、探しているとおりの動作が得られます。

var dust = require('dustjs-linkedin'); 
var c = dust.compile('{#.} <tr> <td>{a}</td> <td>{b}</td> </tr>{~n} {:else} <p>Humm...</p> {/.}', 'viewer'); 
dust.loadSource(c); 
dust.render('viewer', [{a:'bob', b:'carol'},{a:'ted', b:'alice'}], function(err, out){ console.log(out)}); 

プリント

<tr> <td>bob</td> <td>carol</td> </tr> 
    <tr> <td>ted</td> <td>alice</td> </tr> 

この質問:ノードからHow do I loop through an array passed directly to dust.js?は{} .A示唆しても動作するはずですが、それはあなたのバージョンに依存することができます。

関連する問題