Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 反应路由器basename工作不正常_Reactjs_React Router V4_No Match - Fatal编程技术网

Reactjs 反应路由器basename工作不正常

Reactjs 反应路由器basename工作不正常,reactjs,react-router-v4,no-match,Reactjs,React Router V4,No Match,我使用此路由器创建了一个小型react应用程序: <BrowserRouter basename='/hotel/'> <Routes /> </BrowserRouter> 以下是路线: <Switch> <Layout path="/:agency" component={Home} /> <Layout path="/:agency/list" component={List} />

我使用此路由器创建了一个小型react应用程序:

<BrowserRouter basename='/hotel/'>
    <Routes />
</BrowserRouter>

以下是路线:

<Switch>
    <Layout path="/:agency" component={Home} />
    <Layout path="/:agency/list" component={List} />
    <Layout path="/:agency/detail/:id" component={Detail} />
    <Route component={NoMatch} />
</Switch>

当我尝试点击一条没有basename的路线时,控制台上会出现以下警告:



警告:您正试图在URL路径为的页面上使用basename 不以basename开头。以“/4123”开头的预期路径 “/酒店”


当我希望获得nomatch路由时……有没有办法获得nomatch路由而不是查看我的应用程序?

basename
将路由器的应用程序仅限于以
/hotel
开头的路由。您需要的是在根(“/”)级别定义
NoMatch
,省略
basename
。大概是这样的:


...