React Router - Uncaught SyntaxError: Unexpected token < when refreshing an URL with params

React Router - Uncaught SyntaxError: Unexpected token < when refreshing an URL with params

我正在使用 react 16react router 4webpackwebpack dev server

我有以下 Route:

<Route path="/company/:symbol" render={this.getCompanyPageRoute} />

我确实通过以下方式导航到这条路线:

this.props.history.push('/company/blablabla');

一切正常。但是如果我用 URL 刷新页面,我会收到以下错误:

Uncaught SyntaxError: Unexpected token <

我看到有好几篇帖子都出现了这个错误,但我并没有按照这些链接来解决这个问题。

如果可以帮助到其他人,请发布答案。

将 webpack 配置的输出 属性 更改为以下内容修复了问题:

output: {
        path: BUILD_DIR,
        publicPath: '/',
        filename: 'bundle.js',
    }

这个技巧是:publicPath: '/'

我刚遇到同样的问题。

就我而言,我必须按照您在回答中提到的那样添加 publicPath: '/',并在我的脚本源中添加一个空缺 /

output: {
    path: path.join(__dirname, "/public/dist"),
    publicPath: '/',
    filename: "[name].js",
}

之前:<script src="dist/main.js"></script>(缺少开头 /

之后:<script src="/dist/main.js"></script>

试试这个

您只需将 <base href="/" /> 添加到 index.html<head> 中。 这解决了我的问题。或许对你也有帮助。

https://github.com/vuejs-templates/pwa/issues/165#issuecomment-419709072