CRA window.location.reload(true)不更新PWA

时间:2019-06-01 07:22:09

标签: javascript reactjs service-worker create-react-app

我正在使用Create-react-app,并注册了随附的serviceWorker。

import * as serviceWorker from "./serviceWorker"

class App extends Component {
  constructor(props) {
  super(props)
  serviceWorker.register({
    onUpdate: this.handleServiceWorkerUpdate
  })
 }
}

handleServiceWorkerUpdate()函数会提示用户是否要更新PWA /网站,如果是,我会运行window.location.reload(true)

但是,这不会为用户提供PWA的最新版本。用户需要点击+移位+重新加载网站,或者如果已安装PWA,则需要硬关闭该应用程序并重新打开它以获取最新版本。

我如何为用户提供最新版本而又不告诉他们没有手动强制刷新/重新加载应用程序?

CRA serviceWorker我没有更改此文件中的任何内容。 https://github.com/facebook/create-react-app/blob/master/packages/react-scripts/template/src/serviceWorker.js#L79

0 个答案:

没有答案