2014-11-06 27 views
6

modülünü bulunamıyor ve sadece html dosyalarını (jade, ejs ... motorları) kullanmamaya çalışıyorum.Nodejs: Hata: nodejs kullanarak 'html'

heres benim giriş noktası (index.js) kodu: i url vurduğunda Bu sadece iyi yapıyor

var express = require('express'); 
var bodyParser = require('body-parser'); 

var app = express(); 

app.set('port', (process.env.PORT || 5000)); 
app.use(express.static(__dirname + '/public')); 

app.use(bodyParser.urlencoded({ 
    extended: true 
})); 
app.use(bodyParser.json()); 

app.use(express.static(__dirname + '/public')); 

app.get('*', function(req, res){ 
    res.render('index.html'); 
}); 

app.listen(app.get('port'), function() { 
}); 

"localhost: 5000 /", ama "gibi bir şey çalıştığınızda localhost: 5000/ Hata: ne olursa olsun" i şu mesajı aldık modülü bulamıyor 'html' nodejs için

im yeni, ama tüm yolları index.html dosyayı işlemek istiyorum. Bunu nasıl yapabilirim ???

Teşekkür ederiz.

cevap

22

Görünüm klasörünüzü belirtmeniz ve motoru HTML'ye ayırmanız gerekir. Eğer düz HTML kullanabilir ortak klasöre yerleştirin veya bir statik dosya olarak hizmet planlıyorsanız, bu tür yeşim veya Ejs gibi bazı render motorlarını kullanırken

var express = require('express'); 
var bodyParser = require('body-parser'); 

var app = express(); 

app.set('port', (process.env.PORT || 5000)); 
app.use(express.static(__dirname + '/public')); 
app.set('views', __dirname + '/public/views'); 
app.engine('html', require('ejs').renderFile); 
app.set('view engine', 'html'); 

app.use(bodyParser.urlencoded({ 
    extended: true 
})); 
app.use(bodyParser.json()); 



app.get('*', function(req, res){ 
    res.render('index.html'); 
}); 

app.listen(app.get('port'), function() { 
}); 
+1

Daha önce "ejs" yüklemeniz gerektiğini unutmayın, tamam mı? – vcrzy

+0

sadece ejs kurduktan sonra ve 'index.html' 'view' klasörünün içine koyulduktan sonra gayet iyi çalışıyor, teşekkürler dostum. – dafriskymonkey

+0

ejs yüklemek için komut 'npm install ejs' – mujaffars

4

Bir tek hale kullanayım.

res.sendFile('index2.html', {root : __dirname + '/views'});