部分航线不与反应路由器4

问题描述:

匹配我有一个路线匹配反应路由器4.我的路线是一个问题:部分航线不与反应路由器4

<Switch> 
    <Route exact path='/' component={Home} /> 
    <Route path='/communities/create' component={CreateCommunity} /> 
    <Route component={PageNotFound} /> 
</Switch> 
  • 为/,我得到的主页(OK)。
  • 对于/ test,我找到未找到的页面(确定)。
  • 对于/ communities/create,我得到一个空白页面(不正确)。
  • 对于/测试/ 2,我得到了一个空白页面(不正常)

如果有不止一个“/”在我的路线,我得到一个空白页。我怎样才能得到一个空白页?它应该是至少一个“未找到”页面的权利。但对于多个“/”,我得到一个空白页。没有一条路线似乎匹配。

+0

看起来问题不在于给定片段中,如果它显示空白页面,则可能是非组件加载。你在控制台中看到什么吗? –

+0

是的,我得到了一个控制台错误:无法加载资源:服务器响应状态为404(未找到)。 我在webpack的devServer配置中使用'historyApiFallback:true'。 – vijayst

显然,这个问题与反应路由器配置无关。但更多与webpack配置有关。

我正在使用historyApiFallback:webpack-dev-server的真实设置。所有路线将通过index.html以上述配置提供。但似乎当publicPath在输出配置设置如下工作:

output: { 
    path: path.resolve(__dirname, 'dist'), 
    filename: 'bundle.js', 
    publicPath: '/' 
}, 

我能够做出反应,样板使用github issue来解决它。