私はちょうどmoment.jsをインストールしました。今私の翡翠のテンプレートの中でmoment
にアクセスしたいと思う。例:Jadeテンプレートにサーバーサイドスクリプトを含めるにはどうすればいいですか?
.main-content
.container
.access-details.clearfix
.left
div Logged in: <b>#{user.name}</b>
div Access Lvl: #{user.accessLevel}
.right
div= moment().format("dddd, MMMM Do YYYY, h:mm:ss a")
明確にするには、日付をサーバー側でフォーマットしてから、レンダリングされた文字列としてクライアントに送信します。
JavaScriptライブラリをJadeテンプレートの内部で使用できるようにするにはどうすればよいですか?
私はおそらく、私はExpressで、これを使用していることに注意してください:
var server = express.createServer();
server.configure(function() {
server.set('view engine', 'jade');
私が含まれるようにライブラリそれを伝えるために何とかそこに合格しなければならないいくつかのオプションがありますか?
これは、ローカル変数を渡すこととまったく変わりはありません。たとえば、
server.get('/', function (req, res) {
res.render('index', {
locals: {
moment: require('moment')
}
});
});
しかし、私はこれをすべてのビューに渡したくありません。私がそれを忘れてしまった場合、私のアプリはメインレイアウトで使われているように壊れてしまいます。では、どうすればいつでも利用できるようにすることができますか?
ヘルパー概念は、 '([' app.locals'](http://expressjs.com/api.html#app.locals)あなたは「静的なヘルパー」の意味は何エクスプレス3からされて削除されましたapp.locals.moment = require( 'moment'); ')。 '.dynamicHelpers'はミドルウェアを使います。 – elmigranto