Reactjs 反应路由器4不';t显示组件

Reactjs 反应路由器4不';t显示组件,reactjs,react-router,react-redux,react-router-v4,react-router-dom,Reactjs,React Router,React Redux,React Router V4,React Router Dom,我的react redux应用程序中有两条路线: ReactDOM.render( <Provider store={store}> <BrowserRouter> <div> <Route path = '/a' component = {ContainerComponent} /> <Route path = '/b' component = {Container

我的react redux应用程序中有两条路线:

ReactDOM.render(

<Provider store={store}>
    <BrowserRouter>

        <div>
            <Route path = '/a' component = {ContainerComponent} />
            <Route path = '/b' component = {ContainerComponent} />
        </div>      

    </BrowserRouter>
</Provider>, 

document.getElementById('app'));

ReactDOM.render(
, 
document.getElementById('app');

您还需要定义第三条路线。由于路径匹配的功能,在不使用
exact
参数的情况下,
BrowserRouter
将匹配路径与所浏览URL匹配的任意数量的路由。在本例中,使用URL
/a
,您将得到两个组件。但是如果您浏览URL
/a/b
,唯一与路径匹配的路由是第三个。因为您没有在代码中定义,所以出现了一个正确的404错误。

好的,最后通过修改webpack.config.js解决了这个问题。替换为:

output: {
    filename: 'transformed.js',
    path: __dirname + '/build',
},
为此:

output: {
    filename: 'transformed.js',
    path: __dirname + '/build',
    publicPath: '/'
},

我对那些教程很好奇,它解释了组合url路径可以同时呈现多个组件。据我所知,你现在的行为是正常的,这是不可能的。就像@Dez说的,我也对那些通过连接两条路径来呈现多个组件的教程感兴趣。@Dez例如youtube上的这个(7:00-7:20):。我只是重复他的动作。哦,我明白你想达到的目的了。@John Kennedy我的最终目标是在修改URL字符串(添加JWT令牌)后,保持呈现组件在屏幕上。目前,我的组件在向当前URL添加了一些字符后消失(错误)。这就是为什么我有兴趣重复在这里做的事情:youtube.com/watch?v=l9eyot_____________________________________________很好很好-仍然给我一个错误…我想知道一个
basename='/'
到你的路由器在你的情况下也能工作。
output: {
    filename: 'transformed.js',
    path: __dirname + '/build',
},
output: {
    filename: 'transformed.js',
    path: __dirname + '/build',
    publicPath: '/'
},