node.js - guide - NodeJS accede al archivo con ruta relativa
npm express (2)
Esta pregunta ya tiene una respuesta aquí:
Parecía un problema directo.
Pero no puedo descifrar esto.
Dentro de helper1.js me gustaría acceder a foobar.json (desde
config/dev/
)
root
-config
--dev
---foobar.json
-helpers
--helper1.js
No pude hacer que esto funcionara fs: ¿cómo ubico una carpeta principal?
Cualquier ayuda aquí sería genial.
¡Sencillo!
La carpeta llamada
..
es la carpeta principal, por lo que puede hacer la ruta al archivo que necesita como tal
var foobar = require(''../config/dev/foobar.json'');
Si necesitaras subir dos niveles, escribirías
../../
etc.
Algunos detalles más sobre esto en esta respuesta SO y sus comentarios
Puede usar el módulo de
path
para unir la ruta del directorio en el que
helper1.js
vive con la ruta relativa de
foobar.json
.
Esto le dará la ruta absoluta a
foobar.json
.
var fs = require(''fs'');
var path = require(''path'');
var jsonPath = path.join(__dirname, ''..'', ''config'', ''dev'', ''foobar.json'');
var jsonString = fs.readFileSync(jsonPath, ''utf8'');
Esto debería funcionar en Linux, OSX y Windows suponiendo una codificación UTF8.