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

时间:2017-12-22 08:58:39

标签: javascript webpack es6-modules

我如何获得模块内的moudle路径?我使用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 个答案:

答案 0 :(得分:4)

无法访问ES6模块内的模块路径(尚未)。这是known problem,并且stage 3 proposal表示新的元素属性import.meta,它会解析为具有相应信息的对象。详细了解here

也就是说,webpack捆绑包 support Node's __dirname,例如, Current file path in webpackWebpack can not use __dirname?

答案 1 :(得分:2)

import.meta现在在所有现代浏览器中都受支持!

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

输出:

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

(尽管OP询问了webpack,但我相信此信息对许多来这里的人很有用)