我对如何从根开始做(多个)可选路径参数有点困惑。我用的是React-Router3和Redux4.3。
据我所知,(/:param1)(/:param2)
应该可以工作,但在加载应用程序时,我遇到了以下错误:
import React from 'react';
import ReactDOM from 'react-dom';
import { Provider } from 'react-redux';
import { Router, browserHistory, Route } from 'react-router';
import { syncHistoryWithStore } from 'react-router-redux';
import configureStore from './store/configureStore';
import {MyContainer} from "./containers/MyContainer";
const store = configureStore();
const history = syncHistoryWithStore(browserHistory, store);
ReactDOM.render(
<Provider store={store}>
<Router history={history}>
<Route path="/(/:Type)(/:Id)" component={MyContainer}/>
</Router>
</Provider>,
document.getElementById('root'),
);
path="(/:Type)(/:Id)"
path="(/:Type)/(/:Id)"
path="/(/:Type)/(/:Id)"
path="/(/:Type)(/:Id)"
path="/:Type/:Id" // Only works when params are supplied
<Route path="/test(/:Type)(/:Id)" component={MyContainer}/>
<Route path="/(/:Type)(/:Id)" component={MyContainer}/>
今天也有同样的问题。我是这样解决的:
<Route path="/(:param1)(:/param2) component={SomeComponent}"
但它匹配和路径没有
假设我有以下两条路线: 现在,当我尝试点击路由的根路由为与参数被触发... 我假设解决方案是在param1前面设置一个问号,就像这样,这样它就可以从路由中保持住,但我不知道如何在react router v4中做到这一点
问题内容: 我正在尝试通过我的应用程序建立路由器链接, 在这种情况下,我有三个文件。 我在Book的内部建立了一个仅在悬停时才会出现(在书的封面上) 这将带我到/ details / 12345(isbn10号) 我很难理解的是例如在按下时如何 操作,或者是否可以在以后使用零件创建像过滤器一样的方法 由于在将安装成… 后来,我想抓住它,这样我就可以将自己的内部 问题答案: 为了在您的组件中接收路径
我有点被路线部分卡住了。想象一下,我有两条路线,它们有自己的路径: /person/add应该显示一个表单,在那里我可以创建一个新的Person /人/: id应该显示一个具有给定id的人。 问题 有没有办法让我避免这种情况?例如,通过告诉:id应该是一个数字?
我正在使用react路由器。我想检测我来自哪里的上一页(在同一应用程序中)。我的上下文中有路由器。但是,我在路由器对象上没有看到任何属性,如“先前路径”或历史记录。我该怎么做?
问题内容: 我想用可选的path参数声明一个路径,因此当我添加它时,页面会做一些额外的事情(例如,填充一些数据): http:// localhost / app / path / to / page <=渲染页面 http:// localhost / app / path / to / page / pathParam <=根据pathParam使用某些数据渲染页面 在我的React Rout