0

オブジェクトをループして、jadeテンプレートのループの一部としてマークダウンを出力するにはどうすればよいですか?

これが私のテンプレートファイルです

block content
  section.content
    h1= title
    p Welcome to #{title}
    ul
      each post in posts
        li!= :markdown
          post

これが投稿オブジェクトの例です

{
    "post1": "#Hey\nHow are you?",
    "post2": "#Hello\nworld"
}

しかし、ループ内でマークダウンを機能させることができないようです。ドキュメントを読んでGoogleを試しましたが、別のライブラリをロードする必要のないものを見つけることができないようです。ジェイドがすでにそれを持っているときのビューのマークダウン。

4

1 に答える 1

1

私はこの問題についてさらに調査を行いましたが、私が理解している限り、それは次の理由によるものです。

:markdown

my!=postなどの評価されたスクリプトとは異なる時間にコンパイルされます

修正は次のとおりです。

postオブジェクトの後で:markdownをコンパイルすることはできなかったので、このようにnode-markdownモジュールをビューに挿入しました。

var MarkDown = require('node-markdown').MarkDown;
res.render('blog', {
    "title": name,
    "md"   : Markdown,
});

そして私の見解ではこれを使用しました

each post in posts
  li!= md(post)

そして、それはすべて機能しているように見えました。タイトルvarは修正の一部ではなく、単なる無感覚だったため、例から除外しました。

于 2013-02-23T12:13:17.067 に答える