0

我正在使用带有 React、Redux 和 React-router-dom 的经典配置。在开发中一切正常。和生产模式(本地主机和生产服务器)。我只是对 NoMatch 流程有疑问。

  • /good-path,它的工作
  • /wrong-path 它的工作并显示 NoMatch 组件
  • /wrong/path 它显示一个白页(网络控制台中的 404 状态,url 错误 www.myWebsite.com/wrong/path)

我正在使用: - react 16.8.4 - react-dom 16.8.4 - react-redux 6.0.1 - react-router-dom 5.0.1 - redux 4.0.1

这是我的配置示例:

<Provider store={store}>
  <Router>
    <div>

      <NavLink exact to="/">Home</NavLink>

      <NavLink exact to="/contact">Contact</NavLink>

      <Switch>
        <Route path="/" exact component={Home} />
        <Route path="/contact" component={Contact} />
        <Route component={NoMatch} />
      </Switch>

    </div>
  </Router>
</Provider>

一切正常,但我希望 NoMatch 组件会显示这种错误的路径:/wrong/path(多个斜杠 url)。在这种情况下,index.html 已加载,但我无法访问 app.js 之类的资源,使用这种 URL www.myWebsite.com/wrong/app.js 时出现网络错误 404

谢谢你的帮助。

4

1 回答 1

1

一位朋友帮助我完成这个任务。我在 Webpack 配置中找到了答案。

我需要输出设置中的更多细节,我有一个 publicPath:"/" :

// Set the output
  output: {
    // Path for the file
    path: path.resolve(__dirname, 'dist'),
    // Name for the output file
    filename: "app.js",
    //
    publicPath:"/"
  },

感谢我的朋友 Georges 和这篇文章:https ://stackoverflow.com/a/39278576/9945698

于 2019-06-30T21:23:53.487 回答