首页 > 解决方案 > Rollup.js 捆绑图片

问题描述

在 webpack 世界中,我可以使用file-loader以下列方式捆绑和访问图像作为 url

像这样:

const webpackConfig = {
  // ...
  module: {
    rules: [
      {
        test: /\.(jpg|png|svg)$/,
        use: [
          {loader: 'file-loader?name=[path][name].[hash].[ext]'}
        ],
        include: paths
      }
    ]
  }
}

并像这样在反应组件上使用它,例如:

import foo from 'assets/images/foo.png'

function ReactFunctionalComponent () {
  return (<img src={foo} />)
}

这会将 foo 与图像的路径放在一起

有没有办法在汇总 js 上做同样的事情,这样我就可以将图像资产作为 URL 并在捆绑包内使用散列?

标签: reactjswebpackrollupjs

解决方案


您可以使用插件向汇总添加功能。在这种情况下,使用rollup-plugin-image( https://github.com/rollup/rollup-plugin-image ) 或rollup-plugin-img( https://github.com/alwaysonlinetxm/rollup-plugin-img ) 似乎更灵活。

考虑到这种技术可以增加文件的大小。


推荐阅读