当前位置: 首页 > article >正文

Vue打包后部署缓存问题处理方式

Vue打包后部署缓存问题[ 配置vue.config.js ]

  • 1. 处理思路:添加时间戳
  • 2. 涉及知识点
    • 1. `url-loader`
    • 2. `file-loader`
  • 3. 参考代码

1. 处理思路:添加时间戳

  1. 打包后的js文件名添加时间戳
    • 打包后的css文件名添加时间戳
      • 打包后的Img文件名添加时间戳

2. 涉及知识点

1. url-loader


  • url-loader: Git文档地址

  • url-loader 属性

NameTypeDefaultDescription
limit{Boolean|Number|String}true指定文件的最大大小(以字节为单位).
mimetype{Boolean|String}based from mime-types设置要转换的文件的MIME类型.
encoding{Boolean|String}base64指定将与文件内联的编码.
generator{Function}() => type/subtype;encoding,base64_data创建自己的自定义实现来编码数据.
fallback{String}file-loader指定当目标文件的大小超过限制时要使用的备用加载程序.
esModule{Boolean}true使用ES模块语法.

2. file-loader

  • url-loader内部封装了file-loader

3. 参考代码

  • /vue.config.js
const timeStamp = new Date().getTime()
module.exports = {
  devServer: {},
  configureWebpack: {
  // 打包后.js文件名添加时间戳,存放在js/
  // webpack打包的时候只会处理JS之间的依赖关系;下方处理css
    output: {
      filename: `js/[name].${timeStamp}.js`,
      chunkFilename: `js/[name].${timeStamp}.js`,
    }
  },
  css: {
    // 输出重构 打包编译后的css文件名称,添加时间戳,存放在css/
    extract: {
      filename: `css/[name].${timeStamp}.css`,
      chunkFilename: `css/[name].${timeStamp}.css`,
    }
  },
  chainWebpack(config) {
  // 打包后图片文件名添加时间戳,存放在img/
    config.module
      .rule('images')
      .use('url-loader')
      .tap(options => {
        options.name = `img/[name].${timeStamp}.[ext]`
        options.fallback = {
          loader: 'file-loader',
          options: {
            name: `img/[name].${timeStamp}.[ext]`
          }
        }
        return options
      })
  }
}


http://www.kler.cn/a/15099.html

相关文章:

  • 基于Java Springboot网上花卉购物系统
  • MongoDB聚合操作
  • 统信UOS开发环境支持Golang
  • 鸿蒙原生应用开发元服务 元服务是什么?和App的关系?(保姆级步骤)
  • 掌握Golang中的数据竞争检测:runtime/race包全面教程
  • 网页作业9
  • HBase正确使用方法
  • 【Linux从入门到精通】Linux常用基础指令(下)
  • netcore工程在linux下调用linux动态库
  • 借灰姑娘的手,讲述js混淆加密的美丽
  • 嵌入式设备显示屏相关概念汇总
  • 国内直接使用的ChatGTP
  • ThingsBoard教程(三六):规则节点解析 检查关系节点 check relation,实体类型节点 entity type
  • 蒸发器前氟离子超标的解决方法
  • KDJB-802C继电器成组保护校验仪
  • 2023年能源与环境工程国际会议(CFEEE 2023)
  • ES6对String字符串、Array数组、Number数字、Object对象 类型做了哪些升级优化
  • streamx平台部署
  • 1689_MATLAB处理Excel文件提升篇
  • 【ROS】ubuntu18.04安装ROS(ROS1 Melodic)
  • 报告打印的相关CAPL函数,实例代码演示汇总
  • VS 对话框编辑器命令的默认快捷键
  • 创建第一个DJango3的后端项目
  • Kafka 安装部署-单节点
  • PostgreSQL 数据类型转换
  • Java泛型之通配符类型