Bagaimana cara menghilangkan Jade saat menggunakan Express dengan Node.JS? Saya hanya ingin menggunakan html biasa. Di artikel lain, saya telah melihat bahwa orang merekomendasikan app.register () yang sekarang sudah tidak digunakan lagi di versi terbaru.
103
title
dalam file html?Jade juga menerima masukan html.
Cukup tambahkan titik di akhir baris untuk mulai mengirimkan html murni.
Jika itu berhasil untuk Anda, cobalah:
PS - Tidak perlu menutup HTML - itu dilakukan secara otomatis oleh Jade.
sumber
Pada express 3 Anda cukup menggunakan
response.sendFile
Dari referensi api ekspres resmi :
Peringatan
res.sendFile
menyediakan cache sisi klien melalui header cache http tetapi tidak menyimpan konten file di sisi server. Kode di atas akan masuk ke disk pada setiap permintaan .sumber
sendfile
tidak mengizinkan Anda untuk melakukan template apa pun karena ini hanya mengirim byte dari sebuah file. Selanjutnya, saya akan merekomendasikan untuk tidak menggunakansendfile
seperti ini karena itu berarti Anda akan mencapai disk setiap kali ada permintaan masuk - kemacetan besar. Untuk halaman dengan lalu lintas tinggi, Anda harus benar-benar melakukan cache dalam memori.Menurut pendapat saya, menggunakan sesuatu sebesar ejs hanya untuk membaca file html agak berat. Saya baru saja membuat mesin template saya sendiri untuk file html yang sangat sederhana. File tersebut terlihat seperti ini:
Saya memanggil milik saya htmlEngine, dan cara Anda menggunakannya adalah dengan mengatakan:
sumber
app.register()
belum disusutkan, baru saja diubah namanya menjadiapp.engine()
sejak Express 3 mengubah cara penanganan mesin template .Jika Anda mencari mesin templating yang memungkinkan Anda menggunakan HTML 'biasa', saya sarankan doT karena sangat cepat .
Tentu saja, perlu diingat bahwa model tampilan Express 3 menyerahkan cache tampilan kepada Anda (atau mesin template Anda). Dalam lingkungan produksi, Anda mungkin ingin menyimpan pandangan Anda ke dalam memori sehingga Anda tidak melakukan I / O disk pada setiap permintaan.
sumber
Anda dapat menggunakan EJS dengan express template mana yang HTML tetapi variabel pendukung. Berikut adalah tutorial yang bagus tentang cara menggunakan EJS secara ekspres.
http://robdodson.me/blog/2012/05/31/how-to-use-ejs-in-express/
sumber
Untuk membuat mesin render menerima html, bukan giok, Anda dapat mengikuti langkah-langkah berikut;
Instal konsolidasi dan swig ke direktori Anda.
tambahkan baris berikut ke file app.js Anda
tambahkan template tampilan Anda sebagai .html di dalam folder "tampilan". Mulai ulang server node Anda dan mulai aplikasi di browser.
Meskipun ini akan membuat html tanpa masalah, saya akan merekomendasikan Anda untuk menggunakan JADE dengan mempelajarinya. Jade adalah mesin template yang luar biasa dan mempelajari ini akan membantu Anda mencapai desain & skalabilitas yang lebih baik.
sumber
pertama periksa versi kompatibilitas mesin template dengan menggunakan baris di bawah ini
maka Anda harus menggunakan tidak ada tampilan dari daftar. pilih tidak ada tampilan
sekarang Anda dapat menggunakan semua html, css, js, dan gambar Anda di folder publik.
sumber
Nah, sepertinya Anda ingin menyajikan file statis. Dan ada halaman untuk itu http://expressjs.com/en/starter/static-files.html
Anehnya tidak ada yang menautkan ke dokumentasi.
sumber
Mengingat Anda memiliki rute yang sudah ditentukan atau benar-benar tahu cara melakukannya.
CATATAN: rute ini harus ditempatkan setelah yang lain karena * menerima semuanya.
sumber
karena Jade mendukung HTML, jika Anda hanya ingin memiliki .html ext, Anda dapat melakukannya
lalu Anda hanya mengubah file dalam tampilan dari giok ke html.
sumber
Anda juga dapat langsung memasukkan file html Anda ke file giok Anda
Jawaban asli: Generator Ekspres Tanpa Jade
sumber
Jika Anda ingin menggunakan html biasa di nodeJS, tanpa menggunakan giok .. atau apa pun:
Secara pribadi saya baik-baik saja dengan itu.
Keuntungannya adalah kesederhanaan saat mengontrol. Anda dapat menggunakan beberapa trik, seperti
'<p>' + (name || '') + '</p>'
, ternary .. dllJika Anda menginginkan kode indentasi di browser, Anda dapat melakukan:
dan gunakan \ t atau \ n sesuka hati. Tapi saya lebih suka tanpa, plus lebih cepat.
sumber
fs
modul ini.fs.readFile(htmlfile, 'utf8', function (err, file) {