首页 > 解决方案 > 如何修复在 Reactjs 中使用 CTRL+shift+R 无法获取页面硬刷新

问题描述

我在hard refersh使用CTRL+shift+R. 它返回错误Cannot GET /blogs

我已经看到了一些建议进行更改的解决方案,但server.js我仍然遇到与硬刷新相同的问题。

任何解决方案来解决它。我需要在这里更改以使其正常工作。

//server.js

app.use(express.static(path.join(__dirname, '/client/build')));

// Serve static assets if in production
if(process.env.NODE_ENV === 'production') {
    // SET static folder
    app.use(express.static('client/build'));
    app.get('/*', (req, res) => {
        res.sendFile(path.resolve(__dirname, 'client', 'build', 'index.html'));
    });
}

//路由链接

<Navigation >
    <Link to="/#">Home</Link>
    <Link to="/about">About Me</Link>
    <Link to="/projects">Projects</Link>
    <Link to="/resume">Resume</Link>
    <Link to="/blogs">Blogs</Link>
    <Link to="/contact">Contact</Link>


    <MenuLogin/>
</Navigation>

标签: reactjsexpressroutesreact-routerpage-refresh

解决方案


所以我通过使用找到了解决方案hashrouter

import { HashRouter } from 'react-router-dom'

ReactDOM.render((
  <HashRouter>
    <App />
  </HashRouter>
), holder)

如此处所定义


推荐阅读