我想知道如何从我用来定义路线的组件中获取当前位置.例如,我有一个名为Routes的组件,它包含所有路由,如下所示:
class Routes extends React.Component {
render() {
return (
<Router>
<Nav />
<header>{customHeader}</header>
<Switch>
<Route exact path="/" component={Home} />
<Route path="/about" component={About} />
// Other routes
</Switch>
</Router>
);
}
};
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试this.props.location.pathname像在其他组件中那样访问时,它会返回undefined.
在我需要使用的其他组件上withRouter,以便能够访问location信息.但我不能将它与Routes组件一起使用,因为它会引发错误.
我实际上并不需要pathname,我只想查看用户的路线,因为我在访问特定页面时会呈现不同的标题内容.
我在Node.js中有以下对象和lodash"查询"(我只是node在终端中运行):
var obj = {
a: [{
b: [{
c: "apple"
},
{
d: "not apple"
},
{
c: "pineapple"
}]
}]
};
> _.get(obj, "a[0].b[0].c")
'apple'
> _.get(obj, "a[0].b[1].c")
undefined
> _.get(obj, "a[0].b[2].c")
'pineapple'
Run Code Online (Sandbox Code Playgroud)
我的问题是:有没有办法返回路径被发现有效的值数组?
例:
> _.get(obj, "a[].b[].c")
['apple', 'pineapple']
Run Code Online (Sandbox Code Playgroud) 我想在我的应用程序中使用BrowserRouter。我已经将我最上面的组件嵌套在BrowserRouter标记中,如下所示:
import React from 'react';
import ReactDOM from 'react-dom';
import { BrowserRouter as Router, Route, Link } from 'react-router-dom';
import App from './App';
import registerServiceWorker from './registerServiceWorker';
ReactDOM.render((
<BrowserRouter>
<App/>
</BrowserRouter>
), document.getElementById('root'));
registerServiceWorker();
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
./src/index.js
Line 9: 'BrowserRouter' is not defined react/jsx-no-undef
Run Code Online (Sandbox Code Playgroud)
我已经安装了react-router-dom,依赖关系在我的package.json文件中。那我为什么要得到这个?
在我对API应用程序进行API调用之前,我正在为我的视图制作一些测试数据.
在我的angular 2应用程序的服务中,我创建了一个如下所示的界面:
export interface amendmentBookings {
bookingNumber: string;
outboundDate: Date;
returnDate: Date;
route: string;
Passengers: string;
vehicleType: string;
}
Run Code Online (Sandbox Code Playgroud)
我还创建了一个数组,该数组必须包含此接口的类型.代码如下所示:
var bookings: amendmentBookings[] = [
{
bookingNumber: "123456789",
outboundDate:
returnDate:
route: "Dünkirchen - Dover",
vehicleType: "Car 1.85m x 4.5m",
Passengers: "1 adult and 1 child"
},
]
Run Code Online (Sandbox Code Playgroud)
如何在测试数据中插入日期?
我已尝试使用您在javascript中使用的新Date(),如下所示:
new Date("February 4, 2016 10:13:00");
Run Code Online (Sandbox Code Playgroud)
但这不起作用..