4

静的コンテンツを生成するために、いくつかのデータを jade テンプレートに渡そうとしています。私はnode.jsとexpressについてあまり知りません。バックエンドとしては使用していません。テンプレート エンジンとして jade を使用し、静的な html を生成します。

jade issue list には複数行のコードを持つことについて多くのリクエストがあり、所有者のコメントがあります

あまりにも多くの js をテンプレートから除外することを推進したいと思います。マップなどはローカル経由で公開できます。

app.helpers() などを使用する必要があるテンプレート内に多くのロジックやオブジェクトなどがある場合、それらは引き続き表示専用のヘルパーにすることができますが、少なくともテンプレートをきれいに保ちます

うなり声ベースの環境でこれを行う方法がよくわかりません。基本的に、jade テンプレートで javascript 変数 (テキスト、js、または json ファイルの可能性があります) にアクセスできれば、テンプレート内のデータを使用して静的 html ファイルを生成できます。これを行う最善の方法は何ですか?


編集

さらに明確にするために、次のようなデータがある場合があります(jsonファイルなど)

user1 = {link: '', lbl: 'User', txt: '.... lot 0f text ....'}
user2 = {link: '', lbl: 'User', txt: '.... lot 0f text ....'}

私のミックスインでは、どういうわけか、私の翡翠テンプレートでuser1、user2などにアクセスする必要があります

.content
        +colum(user1 )
        +colum(user2 )

mixin colum(d)
    .span4
        h4
            | #{d.lbl}
        p
            | #{d.txt}

ありがとうございます。

4

3 に答える 3

5

grunt-contrib-jade でそれを行いたい場合は、次のdataオプションを試してください。

jade: {
  compile: {
    options: {
      data: function(dest, src) {
        // Return an object of data to pass to templates
        return require('./userData.json');
      },
    },
    files: {
      "dest.html": ["templates/*.jade"]
    },
  },
}

これに関するドキュメントは次のとおりです。https://github.com/gruntjs/grunt-contrib-jade#data

于 2013-07-13T19:41:52.633 に答える
1

#{your_variable} を使用して、データを jade でレンダリングできます。

于 2013-07-13T18:26:04.850 に答える