Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

224
Views
__dirname no funciona en el nodo js con la agrupación de paquetes web

Mi directorio actual es

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

pero cuando estoy usando __dirname y tratando de mostrar un archivo con el servidor express me da este error

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

mi código para eso es

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

cuando lo estoy empaquetando con el paquete web y ejecuto el archivo del paquete, esto sucede. De lo contrario, si solo ejecuto el archivo app.js normal, funciona bien. La ayuda sería apreciada.

about 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Esto se debe a que webpack puede manejar __dirname (y otras cosas específicas del nodo) de diferentes maneras. Si desea que se comporte normalmente, use esto en la configuración de su paquete web:

 { node: { __dirname: false } }

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

about 4 years ago · Santiago Trujillo Report

0

El __dirname está configurado en / por webpack, es por eso que termina con /views/index.html que es la raíz de su sistema de archivos, que resulta ser D:\ en su caso. Puede establecer node.dirname en false en la configuración de su paquete web para no inyectarlo y aplazarlo al tiempo de ejecución. Tenga en cuenta que __dirname se referirá a la ubicación del script que está ejecutando, es decir, la ubicación del paquete, no la fuente original.

 node: { __dirname: false }
about 4 years ago · Santiago Trujillo Report

0

"webpack": "^5.24.4" el valor predeterminado depende de la propiedad de configuración de target :

target: 'web' => __dirname = '/'

target: 'node' => __dirname = 'the full path of the output directory'

Se puede ajustar usando la propiedad de configuración del node , consulte https://webpack.js.org/configuration/node/#node__dirname

about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!