2016-11-19 26 views
2

js文件中定義,的ReferenceError:路徑不是在Object.handle

app.get('/',function(req,res){ 
    res.sendfile(_dirname + '/index.html'); 
}); 

Node.js的可以開始,但我得到這個錯誤,

ReferenceError: path is not defined at Object.handle (E:\javaEEstudy\node.js\node.js入門經典\socket\socket.io_express\app.js:12:15) at next_layer (E:\javaEEstudy\node.js\node.js入門經典\socket\socket.io_express\node_modules\express\lib\router\route.js:103:13) at Route.dispatch (E:\javaEEstudy\node.js\node.js入門經典\socket\socket.io_express\node_modules\express\lib\router\route.js:107:5) at E:\javaEEstudy\node.js\node.js入門經典\socket\socket.io_express\node_modules\express\lib\router\index.js:195:24 at Function.proto.process_params (E:\javaEEstudy\node.js\node.js入門經典\socket\socket.io_express\node_modules\express\lib\router\index.js:251:12) at next (E:\javaEEstudy\node.js\node.js入門經典\socket\socket.io_express\node_modules\express\lib\router\index.js:189:19) at Layer.expressInit [as handle] (E:\javaEEstudy\node.js\node.js入門經典\socket\socket.io_express\node_modules\express\lib\middleware\init.js:23:5) at trim_prefix (E:\javaEEstudy\node.js\node.js入門經典\socket\socket.io_express\node_modules\express\lib\router\index.js:226:17) at E:\javaEEstudy\node.js\node.js入門經典\socket\socket.io_express\node_modules\express\lib\router\index.js:198:9 at Function.proto.process_params (E:\javaEEstudy\node.js\node.js入門經典\socket\socket.io_express\node_modules\express\lib\router\index.js:251:12)

中的index.html和app.js在同一文件中,明確版本4.x版是

+4

替換 「_dirname」 與 「__dirname」 – Akhil

+0

謝謝,我解決這個問題。 –

回答

4

首先,你應該使用

res.sendFile() 

代替

res.sendfile() 

其次,上述方法的參數應該是

__dirname+'index.html' 

代替

_dirname+'index.html' 

換句話說

app.get('/',function(req,res){ 
    res.sendFile(__dirname + '/index.html'); 
}); 

你也有你的Node.js應用程序申報path

var path = require("path"); 
0
var express = require('express'); 
var app = express(); 
var path=require('path'); 
var bodyParser = require("body-parser"); 
app.use(bodyParser.urlencoded({ extended: false })); 

app.get('/', function (req, res) { 
    res.sendFile(path.join(__dirname + '/index.html')); 
}); 
var server = app.listen(5000, function() { 
    console.log('Node server is running..'); 
}); 
+0

儘管這可能會回答這個問題,但最好給您的答案添加一個解釋,指出問題所在。 –

相關問題