Javascript 从react router 3更新到4.1.1,我如何将我的路由与app.jsx分离?
在React Router 3.0.5中,站点运行良好,但当我尝试更新到React Router 4.1.1时,出现了一些错误。我正在尝试将主路径设置为“/”以连接到应用程序组件,否则将连接到列出的其他组件 我得到了一个警告错误:失败的道具类型:道具Javascript 从react router 3更新到4.1.1,我如何将我的路由与app.jsx分离?,javascript,reactjs,react-router-v4,Javascript,Reactjs,React Router V4,在React Router 3.0.5中,站点运行良好,但当我尝试更新到React Router 4.1.1时,出现了一些错误。我正在尝试将主路径设置为“/”以连接到应用程序组件,否则将连接到列出的其他组件 我得到了一个警告错误:失败的道具类型:道具历史记录在路由器中标记为所需,但其值为未定义。 路由器内 这个错误是: Router.js:31 Uncaught TypeError:无法读取未定义的 这是我的密码 App.jsx: 从“React”导入React; 从“./LeftPane.j
历史记录
在路由器
中标记为所需,但其值为未定义
。
路由器内
这个错误是:
Router.js:31 Uncaught TypeError:无法读取未定义的
这是我的密码
App.jsx:
从“React”导入React;
从“./LeftPane.jsx”导入LeftPane;
从“./RightPane.jsx”导入RightPane;
从“./CenterPane.jsx”导入CenterPane;
从“/TopPane.jsx”导入TopPane;
从“./Models.jsx”导入模型;
从“/Projects.jsx”导入项目;
从“/Contact.jsx”导入联系人;
从“反应路由器”导入路由器;
从“axios”导入axios;
类应用程序扩展了React.Component{
构造函数(){
超级();
this.state={modelBucket:[]};
}
组件willmount(){
axios({
方法:“POST”,
url:“/modelcall”
})
。然后((响应)=>{
log('这是models.jsx中的axios调用(响应):',响应);
this.setState({modelBucket:response});
})
.catch((错误)=>{
log('这是models.jsx中axios调用的错误',错误);
});
}
render(){
返回(
{this.props.children}
);
}
}
导出默认应用程序代码>嗯,应该是这样的。确保你从最具体的到最通用的一个开始列出它们。无论如何,浏览器历史记录和哈希历史记录也存在于以前的版本中。无论如何,哈希历史是首选方法
import { BrowserRouter, Route, Switch } from 'react-router-dom';
import { Provider } from 'react-redux';
ReactDOM.render(
<Provider store={createStoreWithMiddleware(reducers)}>
<BrowserRouter>
<div>
<Switch>
<Route path="/models" component={Models} />
<Route path="/projects" component={Projects} />
<Route path="/contact" component={Contact} />
<Route path="/about" component={About} />
<Route path="/" component={App} />
</Switch>
</div>
</BrowserRouter>
</Provider>
, document.querySelector('.container'));
从'react router dom'导入{BrowserRouter,Route,Switch};
从'react redux'导入{Provider};
ReactDOM.render(
,document.querySelector('.container');
希望这有帮助。快乐编码 什么是提供商商店,是redux吗?另外,当我回到应用程序页面时,我是否仍然使用this.children.props来让这些组件工作?我目前并没有使用redux