Get application full path in Node.js

后端 未结 2 1149
南笙
南笙 2021-02-13 20:24

I\'m wondering if there is a best way or best practice to get the full path of application in Node.js. Example: I have a a module in sub folder /apps/myapp/data/models/m

2条回答
  •  花落未央
    2021-02-13 21:11

    There's probably a better solution, BUT this should work:

    var path = require('path');
    
    // find the first module to be loaded
    var topModule = module;
    
    while(topModule.parent)
      topModule = topModule.parent;
    
    var appDir = path.dirname(topModule.filename);
    console.log(appDir);
    

    EDIT: Andreas proposed a better solution in the comments:

    path.dirname(require.main.filename)
    

    EDIT: another solution by Nam Nguyen

    path.dirname(process.mainModule.filename)
    

提交回复
热议问题