【问题标题】:img(src=require(...)) generates ugly htmlimg(src=require(...)) 生成丑陋的 html
【发布时间】:2021-07-24 13:39:00
【问题描述】:

我已经写了 pug-file 的下一个内容:

img(src=require("../../assets/icons/icon.png"))

并尝试使用下一个 webpack 配置通过 Webpack 将其构建为 html:

  module: {
    rules: [
      {
        test: /\.pug$/i,
        use: {
          loader: 'pug-loader', 
          options: {
            pretty: true
          },
        },
      },

....

      {
        test: /\.(png|jpg|svg|jpeg|gif)$/,
        exclude: [
         /Montserrat-Bold.svg$/,
         /Montserrat-Regular.svg$/,
         /Quicksand-Regular.svg$/,
         ],
        use: [
          {
            loader: "file-loader",
            options: {
              name: "[name].[ext]",
              outputPath: "assets/icons/",
              publicPath: '../assets/icons/'
            }
          }
        ]
      },
.....

因此它被构建成

<img src="{&quot;default&quot;:&quot;../assets/icons/icon.png&quot;}">

当我打开包含此内容的 html 页面时,图像不会加载。

我应该怎么做才能将img(src=require("../../assets/icons/icon.png")) 构建成&lt;img src="../assets/icons/icon.png"&gt;

【问题讨论】:

    标签: webpack pug pug-loader


    【解决方案1】:

    需要在文件加载器选项中添加esModule: false

      use: [
          {
            loader: "file-loader",
            options: {
              name: "[name].[ext]",
              outputPath: "assets/icons/",
              publicPath: '../assets/icons/',
              esModule: false,
            }
          }
        ]
    

    我在这里找到了这个答案:https://ru.stackoverflow.com/questions/1091138/webpack-2-pug-%D0%BD%D0%B5-%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B5%D1%82-require

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-22
      • 1970-01-01
      相关资源
      最近更新 更多