Node.js __dirname не определено

Мой каталог выглядит следующим образом:

/config.json,/server.js,/staticFiles/welcome.html

Запуск server.js дает ошибку:

app.use(express.static(_dirname + "/staticFiles" ));  ^ ReferenceError: _dirname не определено

My Server.js:

//------------Server-------------

var fs = require("fs");
var config = JSON.parse(fs.readFileSync("./config.json"));

 console.log("Server UP and running.."); 

 var host = config.host;
 var port = config.port;
 var express = require("express");

 var app = express.createServer();



 //---------Application----------------

app.use(app.router);
 app.use(express.static(_dirname + "/staticFiles"));

app.get("/", function(request,response){

response.send("<h1>"/" of TrimServer</h1>");

 });

app.listen(port,host); 
console.log("Listening on Port -->",port);


 //--------------End-------------------

Ответ 1

Вы используете одно подчеркивание, в то время как эта переменная фактически имеет два подчеркивания в начале: http://nodejs.org/docs/latest/api/globals.html#globals_dirname

Так что используйте

app.use(express.static(__dirname + "/staticFiles"));

вместо

app.use(express.static(_dirname + "/staticFiles"));

Ответ 2

используйте __dirname вместо _dirname (Отсутствует одно подчеркивание в коде)

Ответ 3

Используйте __dirname вместо _dirname (в вашем коде отсутствует одно подчеркивание).