Я новичок в React, поэтому, пожалуйста, не злитесь на меня. У меня есть дочерний компонент <BottomSlider />, и я не могу получить доступ к this.props.location. Я пытался подключить this.props, и он показывает только хранилище, но в родительском компоненте он показывает history, location , store , match. Как я могу передать реквизиты местоположения моему компоненту <BottomSlider>?
родительский компонент
export default class Worklist extends Component<IProps> {
public render() {
console.info(this.props)
return (
<>
<BottomSlider />
</>
)
}
}
и дочерний компонент
export default class BottomSlider extends Component<IProps> {
public render() {
// const { pathname } = this.props.location
const { Modal } = this.props.store
const { BuildingData } = this.props.store
console.info("============= = ")
console.info("test", this.props)
return (
<div
className = {`bottom-slider ${
pathname !== "/worklist-dynamic"
? "bottom__slider-hide"
: "bottom__slider-align"
}`}
>
<div
className = {`bottom__slider ${
pathname === "/worklist-dynamic" ? "bottom__slider-align" : "" // todo add visibility
}`}
>
<div className = "building_name">
<p className = "building_name-text">test</p>
</div>
</div>
</div>
)
}
}





Если вы используете react router v4, вы можете добавить withRouter из react-router-dom в дочерний компонент, чтобы получить доступ к местоположению в дочернем компоненте, как показано ниже:
import { withRouter } from 'react-router-dom'
export default withRouter(BottomSlider)
или вы можете передать все реквизиты вашему компоненту, например
<BottomSlider {...this.props}/>.