每次向生产或任何其他环境进行新部署时,客户端都需要使用ctrl-shift r强制刷新和清除缓存以更新UI,该项目都是使用Create React App进行的。
已经将元标记添加到HTML文件中,但不起作用
<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
我缺少什么配置吗?
你的src/index.js文件应该看起来像这个
import React from 'react';
import ReactDOM from 'react-dom';
import App from './components/App';
import * as serviceWorker from './serviceWorker';
ReactDOM.render(<App />, document.getElementById('root'));
// If you want your app to work offline and load faster, you can change
// unregister() to register() below. Note this comes with some pitfalls.
serviceWorker.register();
只需更改
serviceWorker.register();
对于
serviceWorker.unregister();
在head标记中添加元标记,以确保页面的内容没有被缓存。
<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
试试这个,也许你需要缓存控制
<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>
或者读这个https://webpack.js.org/guides/caching/
您正在使用哪种版本的CRA?如果它是由ServiceWorker引起的,那么您应该禁用ServiceWorker。
import { unregister } from './registerServiceWorker';
unregister();