javascript - 使用动态导入时将 Webpack block url 作为字符串获取

标签 javascript webpack

使用 Webpack,我可以加载这样的模块:

import(moduleName).then(_ => {})

但是我只想获取 block 的 URL,而不是实际加载它。那可能吗?

最佳答案

你可以在 Webpack 5 中通过重用 Worker Plugin 来做到这一点。使用 module.parser。

// utils/chunk-url.js
export function ChunkUrl(url) { return url; }
网络包配置:
webpackConfig.module = {
  parser: {
    javascript: {
      worker: ["ChunkUrl from ~/utils/chunk-url", "..."]
    }
  }
}
示例用法:
import { ChunkUrl } from '~/utils/chunk-url';

// .../chunks/[hash].js
const ScriptUrl = new ChunkUrl(new URL('/path/to/file.js', import.meta.url)); 
该文件将像动态导入一样通过子编译器,但仅返回 URL。

关于javascript - 使用动态导入时将 Webpack block url 作为字符串获取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49027604/

相关文章:

javascript - Chrome 窗口不会从无限滚动加载内容,除非窗口(选项卡)处于焦点状态

javascript - 日期差异应该为零,但它是 18 小时

javascript - 连接 1 个字符串和一个 int 值,同时将 id 值赋予在 HTML 中动态生成的 <button> 字段

TypeScript 编译中缺少 Angular5 :polyfills. ts &\main.ts

javascript - 带有 webpack 的 Angular 2 相对路径

javascript - 从模态中卸载数据

javascript - 发布 - 无法获取错误 - 本地服务器

javascript - 导入 Bootstrap 模式后下拉菜单不起作用

javascript - 在 webpack 中使用 "import"

node.js - 为 vue-cli 运行 "npm run dev"时出现跨环境问题