代码之家  ›  专栏  ›  技术社区  ›  Andrew

ES6获取模块内部模块的路径

  •  5
  • Andrew  · 技术社区  · 7 年前

    如何获取模块内的模具路径?我使用babel和webpack为 浏览器 .

    我想

    /src/someModule/index。js公司

    console.log(`someModule path is ${process.execPath}`);
    

    输出到 浏览器 someModule path is /home/user/proj/src/someModule

    someModule path is /src/someModule

    2 回复  |  直到 7 年前
        1
  •  7
  •   Bergi    7 年前

    目前还无法访问ES6模块内的模块路径。这是一个 known problem ,还有一个 stage 3 proposal 对于新的元属性 import.meta 解析为具有相应信息的对象。了解更多信息 here .

    也就是说,Web包捆绑程序 support Node's __dirname ,参见示例。 Current file path in webpack Webpack can not use __dirname? .

        2
  •  6
  •   Klesun Gian Marco    5 年前

    这个 import.meta 现在所有现代浏览器都支持,耶!

    // /es6/someFile.js
    console.log(import.meta);
    

    输出:

    {url: "https://yourdomain.com/es6/someFile.js"}
    

    (尽管OP询问了有关网页的信息,但我相信这些信息对许多来到这里的人都会很有用)