Kısmenler için ejs kullanmak ve tek tek sayfalar için yeşim kullanın, her ikisi de bir nodejs & ekspres projesinde nasıl kullanılır?tek bir düğümde & express projesinde ejs ve yeşim nasıl kullanılır?
cevap
's github de expressjs api docs ve consolidate.js yolu bulmak kolay
Referans aşağıda express.js doc parçası lütfen
app.engine (dahili, geri arama)
Verilen şablon motor geri bildirimini ext olarak kaydet Varsayılan olarak,() dosya uzantısına dayalı olarak motoru gerektirir. Örneğin, bir "foo.jade" dosyasını oluşturmaya çalışırsanız, Express aşağıdakileri dahili olarak çağırır ve performansı artırmak için sonraki çağrılarda require() öğesini önbelleğe alır. ya da şablon motoruna farklı bir uzantısı "harita" istiyorsanız bu yöntemi kullanabilir - kutudan ifade .__ vermeyin motorlar için
app.engine('jade', require('jade').__express);
. Not olsa, (yol, seçenekler, geri arama): EJS Ekspres beklediğini aynı imzaya sahip bir .renderFile() yöntem sağlar Bu durumda
app.engine('html', require('ejs').renderFile);
: EJS şablonu ".html" dosyalarına motoru haritalama Örneğin Bu yöntemi ejs .__ içsel olarak taklit ettiğinden, ".ejs" uzantıları kullanıyorsanız, hiçbir şey yapmanıza gerek yoktur.
Bazı şablon motorları bu kuralı takip etmiyor, consolidate.js kitaplığı, tüm düğümün popüler şablon motorlarını bu sözleşmeyi izleyecek şekilde eşlemek için oluşturuldu ve böylece Express'te görünmesiz çalışmasına olanak sağladı.
var engines = require('consolidate');
app.engine('haml', engines.haml);
app.engine('html', engines.hogan);
Ama 'express.set '(' view engine ',' ext ');' bir yerlerde kullanmam gerekmiyor mu? – theonlygusti
@theonlygusti Bunu detaylandırır mısınız? Bunu çalıştırmaya çalışıyorum ve konsolidasyon kullanıldığında varsayılan bir 'görünüm motorunun 'gerekli olup olmadığından emin değilim? Dokümanlardayım, eğer bir tane varsa, ref'e bir işaretçi takdir edilecektir. Teşekkürler. –
bu benim için çalışır:
index.js
const express = require('express');
const path = require('path');
const app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'pug');
app.set('view engine', 'ejs');
- boksör ve Ejs eklemek t = "2">
- Bir filename.fileext ile arama işlemi.
yolları/kullanıcıların
const express = require('express');
const router = express.Router();
router.get('/', function (req, res, next) {
res.render('users.ejs');
});
module.exports = router;
yolları/Bu cevap size yardımcı olabileceğini düşündüğümüz yaklaşık
const express = require('express');
const router = express.Router();
router.get('/', function (req, res, next) {
res.render('about.pug');
});
module.exports = router;
"pug" adlı yeni adı getirdiğiniz için teşekkür ederiz. Bu şeylere yeniyim. "Consolidate.js" ile herhangi bir test yaptınız mı? Bence bu, ejs'yi kullanarak ön tarafa tek bir değişken sağlamaya çalıştığım için almam gereken rota. –
mocha + assert ile test yaptım – joseAndresGomezTovar
'consolidate.js'ye baktım ama en iyi şekilde anladım, render yaklaşımları tek bir sayfada karıştırmama izin vermiyor. Zaten “PUG” yi kullandığım için, verileri almak için AJAX'ın yoluna gittim. Overkill .... –
- 1. Bu ejs yeşim içinde nasıl görünebilir?
- 2. Düğüm, Express ve EJS ile HTML'yi sıkıştır?
- 3. Express 3'teki EJS düzenleri
- 4. Node.js, Express, EJS - çıktı değişkeni sayfa
- 5. node.js/express içinde EJS ile görüntü görüntüleme
- 6. Cassandra Commit and Recovery Tek bir Düğümde
- 7. ejs için
- 8. Yeşim, Akış Yönlendiricisi ve Blaze ile Meteor nasıl kullanılır?
- 9. Düğüm Projesinde Önyükleme Nasıl Kullanılır
- 10. NodeJS ve Express
- 11. Node.js, Express, EJS - Gezinme alanındaki geçerli sayfadaki aktif sınıf
- 12. Yeşim - nesneler ve Katmalar
- 13. Node.js Express örneği, Underscore.js'yi görünüm motoru olarak kaydettiriyor mu?
- 14. nodejs ejs, beklenmedik tanımlayıcı
- 15. Express uygulamasında npm yüklü jQuery nasıl kullanılır?
- 16. intellij fikir eklentisi projesinde gradle nasıl kullanılır?
- 17. nodejs/express/yeşim yığını raporlarımı doğru sözdizimi hatalarını yapabilir miyim?
- 18. Qt projesinde önceden derlenmiş başlıklar nasıl kullanılır?
- 19. CMake projesinde dış DLL'ler nasıl kullanılır?
- 20. node.js express ile jsonp nasıl kullanılır
- 21. Visual Studio Veritabanı Projesinde kullanıcı ve oturum açma nasıl kullanılır?
- 22. node.js yeşim - içerik türünü yeşim
- 23. SCSS Express ile nasıl kullanılır? (Node.js)
- 24. Açısal-meteor projesinde açısal-acl nasıl kullanılır?
- 25. yeşim
- 26. Sadece tek bir sayfada css nasıl kullanılır?
- 27. Tek bir uygulamada jQuery Mobile ve Backbone JS nasıl kullanılır?
- 28. Yeşim'den Yeşim ile aktarılan işleme dizisi Yeşim
- 29. Express.js adresindeki ejs nesnesine nasıl erişilir?
- 30. Bir python projesinde tüm bağımlılıkları yüklemek için needs.txt nasıl kullanılır
: http://stackoverflow.com/a/15064438/1266006 –
Merak etme, neden bunu yapmak istersiniz? – esp
Kısmi olarak, değişkenleri hızlı ve yeterli bir şekilde değiştirmek için yalnızca kullanım çubuklarını kullanın, karmaşık sayfalar için güçlü bir şablonlama motoru gereklidir. Bu bağlıdır.Anladım ve paylaşacağım –