Webpack动态导入()和代理缓存

问题描述 投票:0回答:1

我有一个与此类似的代码,webpack完美处理:

import(
  /* webpackChunkName: "my-chunk-name" */
  'my-package'
);

这样就生成了一个名为“my-chunk-name”的块,这很好。对我们来说问题是我们在服务器之前有一个用于缓存文件的代理,这会导致问题;每次发布后,“my-chunk-name”都可以更改,但代理仍然会在一段时间内提供旧版本的文件。

有没有机会为请求的文件添加时间戳,以便它像my-chunk-name.js?_ts=1536219218007?这将确保避免代理缓存并提供文件的新副本。

配置文件:

 output: { 
    path: outputPath, 
    filename: '[name].js', 
    chunkFilename: '[id].js'
 }
webpack webpack-4
1个回答
1
投票

为了实现这一目标,请使用[hash]

output: { 
    path: outputPath, 
    filename: '[name].[contenthash].js', 
    chunkFilename: '[id].[contenthash].js'
 }

这个哈希值对于每个版本都会有所不同,因此当您更新文件时,您的现金将完全正常。

© www.soinside.com 2019 - 2024. All rights reserved.