11

Jinja "nl2br" のようなフィルターが必要ですが、Nunjucks 内にあります。ドキュメントには言及があります ( https://mozilla.github.io/nunjucks/templating.html ) が、nunjucks コード ( https://github.com/mozilla/nunjucks/blob/master/src ) で検索しました。 /filters.js ) であり、存在しません。

誰かが同等のフィルターまたは別のソリューションでそれを解決する方法を知っていますか? または、フィルターを作成する必要がありますか?

4

2 に答える 2

5

Nunjucks にはエスケープ機能が組み込まれています。Nunjucks の設定{autoescape: true}時に設定しておけば、何もする必要はありません。それ以外の場合は、escapeフィルターを使用できます。

改行だけをエスケープしたい場合は、次のようにします。

env.addFilter('nl2br', function(str) {
    return str.replace(/\r|\n|\r\n/g, '<br />')
})

新しく作成したnl2brフィルターを使用します。

注:envは Nunjucks 環境です。

于 2016-02-07T23:05:54.090 に答える