Dmi*_*kov 8 javascript es6-modules
我需要解析通过静态导入或类似函数的动态导入导入的ES 模块,其方式类似于node.js使用require.resolve()解析CJS 模块的方式。ES模块是否存在类似的东西?
例如,如果一个 Vue 包同时具有vue.runtime.common.js和vue.runtime.esm.js. 我需要获得vue.runtime.esm.js. 如果包裹没有,我想知道。
edw*_*win 17
您可以使用import.meta.resolve()
这是节点文档中的示例
(async () => {
const dependencyAsset = await import.meta.resolve('component-lib/asset.js');
})();
Run Code Online (Sandbox Code Playgroud)
请注意,从节点开始,您需要传入--experimental-import-meta-resolve才能使其工作14.3.0
只要import.meta.resolve保持实验性,您就可以使用createRequire来取回require.resolveES 模块中的功能,例如
import { createRequire } from 'module';
const require = createRequire(import.meta.url);
const pathName = require.resolve('vue.runtime.esm.js');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1666 次 |
| 最近记录: |