我正在使用react-rails gem(v 2.3)和react-router-dom(v 4.2.2)并将我的根组件App安装在我的根Rails路由上。
这就是它的安装方式:
<%= react_component("App") %>
这是组件本身:
const Router = ReactRouterDOM.BrowserRouter,
Route = ReactRouterDOM.Route;
class App extends React.Component{
render() {
return (
<Router>
<Route path="/" component={Index}>
</Route>
</Router>
);
}
}
我一直收到以下错误:
Uncaught Error: You should not use <Route> or withRouter() outside a <Router>
我在上面的路由器组件中没有使用Route组件吗?索引组件可能有错误吗?
在此先感谢任何帮助:)
也许这不是正确的错误..尝试覆盖您的应用程序
class App extends React.Component{
render() {
return (
<Router>
<Route path="/" component={Index} />
</Router>
);
}
}
或者在qazxsw poi中包裹你qazxsw poi
Route
这是div
我遇到了类似的错误消息,但在不同的上下文中。我在这里发布我的修复,以防其他人遇到我所做的相同情况。
我的问题是我有一个添加了两个元素的App.js,但我忘了更新我的index.js文件。它曾经是:
class App extends React.Component{
render() {
return (
<Router>
<div>
<Route path="/" component={Index} />
</div>
</Router>
);
}
}
我更新到:
docs
还必须添加以下import语句:
ReactDOM.render(<App />, document.getElementById('root'))