Dalam sesetengah projek, contohnya, jika anda mengambil alih projek orang lain dan anda tidak mahu menggunakan ej yang menyakitkan, atau anda tidak mahu menggunakan jed yang menyakitkan. Jika anda tidak mahu menulis semula halaman sebelumnya, maka anda mungkin perlu memperkenalkan modul ejs atau jed baharu sekarang Anda hanya perlu melakukan dua langkah berikut untuk menyelesaikan kerja menggunakan dua templat
1.consolidate.js
cd ke direktori projek:
npm install consolidate --save
Buka app.js projek (mungkin milik anda dipanggil nama lain)
Tukar app.js kepada coretan kod berikut
app.set('lihat enjin', 'jed');
ditukar kepada
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');
Hanya mulakan semula projek
2. Sedikit soalan
Kod yang sebenarnya saya gunakan dalam salah satu projek A saya ialah
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');
Kaedah penulisan ini boleh digunakan dalam projek A, tetapi dalam projek B yang lain, didapati templat jed tidak boleh dihuraikan
Dan dalam projek B sahaja
boleh digunakanvar 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');
Cara merujuk enjin templat ejs dalam rangka kerja Ekspres
1. Cara memasang enjin templat ejs dalam projek
Gunakan arahan berikut untuk membina struktur asas tapak web dalam panduan NodeJS:
express -t ejs microblog
Teruskan berjalan selepas menjalankan arahan ini
cd microblog && npm install (sifat pergantungan projek pemasangan), mendapati enjin templat yang dipasang adalah jed, bukan ejs. Sebabnya ialah versi semasa tidak lagi mempunyai perintah -t, ia ditukar kepada
express -e microblog
Selepas menjalankan arahan ini, teruskan jalankan cd microblog && npm install, dan enjin templat ejs akan dipasang
Tetapi versi express3 dan ke atas membatalkan reka letak secara lalai, jadi layout.ejs tidak dijana dalam folder pandangan.
2. Selepas memasang ejs, cara menggunakan templat reka letak ejs
Pasang separa ekspres
Tukar ke direktori projek dalam cmd dan jalankan npm install express-partials atau
Tambahkan "express-partials": "*" pada dependencies dalam package.json. Kemudian jalankan pemasangan npm dalam direktori projek.
Kemudian sebutkan bahagian nyata dalam app.js, kaedah petikan:
1. Tambahkan rujukan var partials = require('express-partials');
2. Tambahkan app.use(partials());
di bawah app.set('view engine', 'ejs');
Susun atur panggilan:'nama templat' di mana templat perlu dirujuk Contoh
app.get('/reg', function (req, res) { res.render('reg', { title: '用户注册', layout: 'template' }); });
Kandungan di atas memperkenalkan kepada anda penggunaan templat ejs dan templat jed dalam projek rangka kerja ekspres Nodejs saya harap anda menyukainya.