npm i -s app-root-path
app-root-path
모듈을 통해 app의 root path에 쉽게 접근을 가능하게 한다.
const appRoot = require('app-root-path');
const myModule = require(appRoot + '/lib/my-module.js');
app-root-path
모듈은 실제로는 object를 반환하지만, 내부적으로 toString
메소드를 구현하였기에 String
처럼 사용할 수 있다.
require()
를 쉽게 해주는 helper function도 가지고 있다.
const reqlib = require('app-root-path').require;
const myModule = reqlib('/lib/my_module.js');
어플리케이션의 global
오브젝트에 메소드를 넣음으로써, 프로젝트 전역에서 사용할 수도 있다.
// In app.js
global.reqlib = require('app-root-path').require;
// In lib/module/component/subcomponent.js
const myModule = reqlib('/lib/my-module.js');
단순히 모듈의 path를 결합할 수도 있다.
const myModulePath = require('app-root-path').resolve('/lib/my-module.js');
환경 변수 APP_ROOT_PATH
또는 require('app-root-path').setPath('/my/app/root')
를 통해 반환되는 path를 변경할 수 있다.