0
dust-compiler -s controllers/inbox/views/inbox.dust -d    public/js/custom/inbox/messages.js

しかし、私はエラーが発生しています

 if (err) throw err;
               ^
Error: ENOTDIR, scandir 'C:\jbk\buy2gthr-master\controllers\inbox\views\inbox.dust'
    at Error (native)

私は inbox.dust ファイルを持っています:

{>"../../../layout/layout"/}

 {<css-content}
 {/css-content}
 {<page-content}
 {/<page-content}
     <script id="entry-template" type="text/x-tmpl">
                  {title}
                    <ul>
                        {#data}
                        <li>{name}</li>{~n}
                        {/data}
                    </ul>
     </script>
**<div id="output"></div>**
 {/page-content}
 {<script-content}
 <script src='/js/custom/inbox/inbox.js'></script>
 <script src='https://cdnjs.cloudflare.com/ajax/libs/dustjs-linkedin/2.7.2/dust-full.js'></script>
  {/script-content}

および inbox.js ファイル

$(document).ready(function () {
    var data = {
        "title": "Famous People", 
        "names" : [{ "name": "Larry" },{ "name": "Curly" },{ "name": "Moe" }]
    }

    var source   = $("#entry-template").html();
    var compiled = dust.compile(source, "intro");
    console.log(compiled);

    dust.loadSource(compiled);

    dust.render("intro", data, function(err, out) {
        if(err) console.log(err);
        else
        console.log(out);

        $("#output").html(out);
    });
});

まだ私は取得しています

<div id="output"><ul></ul></div>
4

1 に答える 1

0

どのダスト コンパイラを使用しているかはわかりませんが、使用してくださいdustc。ダストに付属しています。

すべての Dustc API オプションについて読むことができますが、単一のファイルをプリコンパイルするには、次のようにします。

dustc controllers/inbox/views/inbox.dust --output=public/js/custom/inbox/messages.js

Dustc は相対名ではなく絶対名を使用してテンプレートをコンパイルします。これは、Dust がファイルシステムを認識しないためです。相対パスを処理するように関数を特別に設定していない限りdust.onLoad、インクルードを次のようにする必要があります{> "inbox/messages" /}

于 2015-07-26T19:07:23.587 に答える