Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

__dirname is not working in node js with webpack bundling

My current directory is

D:\bkp\Programming\TestWorks\nodejs\testApp

but when i am using __dirname and trying to show a file with express server it gives me this error

Error: ENOENT: no such file or directory, stat 'D:\views\index.html'

my code for that is

res.sendFile(__dirname + 'views/index.html');

when i am bundling it with webpack and run the bundle file then this happens. Otherwise if i just run the normal app.js file it works fine. Help would be appreciated.

like image 968
ShocKwav3_ Avatar asked Apr 20 '17 18:04

ShocKwav3_


1 Answers

This is because webpack can handle __dirname (and other node specific things) in different ways. If you want it to behave like normal, use this in your webpack config:

{
    node: {
        __dirname: false
    }
}

See: https://webpack.js.org/configuration/node/

like image 72
0xRm Avatar answered Sep 29 '22 03:09

0xRm