1

いくつかのダスト テンプレートで使用したいコードがあるので、パーシャルを使用する予定です。以下が最善のアプローチであるかどうかはわかりません。助けてください。

1) 基本テンプレートから一般的なコードを抽出し、userinfo.html というテンプレート ファイルに入れました
2) userinfo.html をコンパイルして userinfo.dust を作成しました
3) {>"userinfo.dust"/} コードを必要なすべてのテンプレートに追加しましたユーザー情報を表示します。
4) 次のコマンドでテンプレートをレンダリングすると、次のようになります。「テンプレートが見つかりません: userinfo.dust」エラーが発生します。

dust.render("moduleTemplate", templateData, function(err, out) {
    $main.html(out);  
}); 

レンダリング中に templateData と一緒に userinfo.dust を送信する必要がありますか? グーグルが私に与えることができるすべての部分的な関連情報を読んでみましたが、パーシャルを実装する方法を理解できませんでした。

4

2 に答える 2

1

あなたの問題に対する答えは、パーシャルがページに含まれていないということのようです。DustはJavaScriptにコンパイルされるため、ファイルの名前をuserinfo.dust(テンプレート)とuserinfo.js(コンパイルされたテンプレート)に変更すると、より意味があります。次に、スクリプトタグを使用してテンプレートを含めます。

<script type="text/javascript" src="templates/userinfo.js"></script>

最後に、コンパイル時に使用したsvame名を使用してテンプレートを呼び出す必要があります。ファイル名を使用することをお勧めします(多くの場合、拡張子なしではありません)。

var userinfoCompiled = dust.compile('userinfo', 'user info template goes here');

この方法でコンパイルされたテンプレートは、次を使用して呼び出すことができます。

{>userinfo/}

コンパイルされたテンプレートの名前がわからない場合は、コンパイルされたJavaScriptファイルを開いて次を探すことができます。

dust.register('userinfo')
于 2012-12-24T13:30:39.607 に答える