一部のプロジェクトでは、たとえば、他の人のプロジェクトを引き継ぎ、痛みを伴う ejs を使用したくない場合や、痛みを伴う jade を使用したくない場合があります。前のページを書き直したくない場合は、ここで ejs または jade モジュールを導入する必要がある場合があります。2 つのテンプレートを使用する作業を完了するには、次の 2 つの手順を実行するだけです。
1.consolidate.js
プロジェクト ディレクトリに移動します:
npm install consolidate --save
プロジェクトの app.js を開きます (おそらく別の名前が付けられています)
app.js を次のコード スニペットに変更します
app.set('ビューエンジン', 'jade');
が
に変更されました
var engines = require('consolidate'); app.engine('jade', engines.jade); app.engine('html', engines.ejs); // or use these // app.engine('jade', require('jade').__express); // app.engine('html', require('ejs').renderFile); app.set('view engine', 'jade');
プロジェクトを再起動するだけです
2. ちょっとした質問
私のプロジェクト A の 1 つで実際に使用したコードは
ですvar engines = require('consolidate'); app.engine('jade', engines.jade); app.engine('html', engines.ejs); // app.engine('jade', require('jade').__express); // app.engine('html', require('ejs').renderFile); app.set('view engine', 'jade'); //多出以下一行 app.set('view engine', 'html');
この書き方はプロジェクトAでは使えますが、別のプロジェクトBではjadeテンプレートが解析できないことが分かります
プロジェクト B では
のみが使用できますvar engines = require('consolidate'); app.engine('jade', engines.jade); app.engine('html', engines.ejs); app.set('view engine', 'jade'); //或者 //app.engine('jade', require('jade').__express); //app.engine('html', require('ejs').renderFile); //app.set('view engine', 'jade');
Express フレームワークで ejs テンプレート エンジンを参照する方法
1. プロジェクトに ejs テンプレート エンジンをインストールする方法
次のコマンドを使用して、NodeJS ガイドの Web サイトの基本構造を構築します。
express -t ejs マイクロブログ
このコマンドの実行後も実行を継続します
cd microblog && npm install (インストール プロジェクトの依存関係プロパティ) で、インストールされているテンプレート エンジンが ejs ではなく jade であることがわかりました。その理由は、現在のバージョンには -t コマンドがなくなり、
に変更されたためです。
express -e マイクロブログ
このコマンドを実行した後、引き続き cd microblog && npm install を実行すると、ejs テンプレート エンジンがインストールされます
ただし、express3 以降のバージョンではデフォルトでレイアウトがキャンセルされるため、views フォルダーにlayout.ejs は生成されません。
2. ejs のインストール後、ejs レイアウト テンプレートの使用方法
express-partials をインストールします
cmd でプロジェクト ディレクトリに切り替え、npm install Express-partials または
を実行します。
package.json の依存関係に "express-partials": "*" を追加します。次に、プロジェクト ディレクトリで npm install を実行します。
次に、app.js で Express-partials を引用符で囲み、メソッドを引用します:
1. 参照 varpartials = require('express-partials');
を追加します。
2. app.set('view Engine', 'ejs'); の下に app.use(partials());
を追加します。
テンプレートを参照する必要があるレイアウト:'テンプレート名' の呼び出し例
app.get('/reg', function (req, res) { res.render('reg', { title: '用户注册', layout: 'template' }); });
上記の内容は、Nodejs Express フレームワークのプロジェクトでの ejs テンプレートと jade テンプレートの使用方法を紹介しています。気に入っていただければ幸いです。