美文网首页
umi 打包之修改打包后的静态资源路径

umi 打包之修改打包后的静态资源路径

作者: 每日需要维生素 | 来源:发表于2022-04-02 11:58 被阅读0次
//chainWebpack.js
// 打包配置,image未测试
const staticDir = 'xxx_static';
const isDev = process.env.NODE_ENV === 'development';

const ChainWebpack = (config, { webpack }) => {
  // 修改css输出目录
  config.plugin('extract-css').tap(() => [
    {
      filename: `${staticDir}/css/[name].[contenthash:8].css`,
      chunkFilename: `${staticDir}/css/[name].[contenthash:8].chunk.css`,
      ignoreOrder: true,
    },
  ]);

  config.module
    .rule('css')
    .oneOf('css')
    .use('extract-css-loader')
    .tap((options) => ({
      publicPath: '/',
      hmr: isDev,
    }));

  config.module
    .rule('less')
    .oneOf('css')
    .use('extract-css-loader')
    .tap((options) => ({
      publicPath: '/',
      hmr: isDev,
    }));
  
 // 修改js输出目录
  config.output
    .filename(`${staticDir}/js/[name].[hash:8].js`)
    .chunkFilename(`${staticDir}/js/[name].[contenthash:8].chunk.js`);

 // 修改image输出目录
  config.module
    .rule('images')
    .test(/\.(png|jpe?g|gif|webp|ico)(\?.*)?$/)
    .use('url-loader')
    .loader(require.resolve('@umijs/deps/compiled/url-loader'))
    .options({
      name: `${staticDir}/[name].[hash:8].[ext]`,
      // require 图片的时候不用加 .default
      esModule: false,
      fallback: {
        loader: require.resolve('@umijs/deps/compiled/file-loader'),
        options: {
          name: `${staticDir}/images/[name].[hash:8].[ext]`,
          esModule: false,
        },
      },
    });

// 修改svg输出目录
  config.module
    .rule('svg')
    .test(/\.(svg)(\?.*)?$/)
    .use('file-loader')
    .loader(require.resolve('@umijs/deps/compiled/file-loader'))
    .options({
      name: `${staticDir}/images/[name].[hash:8].[ext]`,
      esModule: false,
    });

// 修改font输出目录
  config.module
    .rule('fonts')
    .test(/\.(eot|woff|woff2|ttf)(\?.*)?$/)
    .use('file-loader')
    .loader(require.resolve('@umijs/deps/compiled/file-loader'))
    .options({
      name: `${staticDir}/fonts/[name].[hash:8].[ext]`,
      esModule: false,
    });
};
export default ChainWebpack;

image.png

相关文章

网友评论

      本文标题:umi 打包之修改打包后的静态资源路径

      本文链接:https://www.haomeiwen.com/subject/jejtsrtx.html