Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 组件中缺少历史记录_Javascript_Reactjs_React Router_History - Fatal编程技术网

Javascript 组件中缺少历史记录

Javascript 组件中缺少历史记录,javascript,reactjs,react-router,history,Javascript,Reactjs,React Router,History,我刚才观察到,我的一些组件有历史记录,而一些组件没有历史记录。 我的组件是comp1、comp2、comp3 comp1是comp2的父级,comp2是comp3的父级 comp1 |____comp2 |_____comp3 给定的所有组件都是有状态的组件。通过路由访问comp1 我的观察表明,那些通过路由器直接连接的组件只有this.props.history可用 有人能解释一下这个事实吗 我们可以访问剩余组件的历史记录吗 将为路由组件的组件道具指定组件。如果您希望应用程序中更深

我刚才观察到,我的一些组件有历史记录,而一些组件没有历史记录。 我的组件是
comp1、comp2、comp3

comp1是comp2的父级,comp2是comp3的父级

comp1
|____comp2
     |_____comp3
给定的所有组件都是有状态的组件。通过路由访问
comp1

我的观察表明,那些通过路由器直接连接的组件只有
this.props.history
可用

有人能解释一下这个事实吗

我们可以访问剩余组件的历史记录吗


将为
路由
组件的
组件
道具指定组件。如果您希望应用程序中更深层次的组件也可以访问它们,您可以使用HOC

示例

class Component3 extends React.Component {
  render () {
    console.log(this.props.history);

    return <h3> Test </h3>;
  }
}

export default withRouter(Component3);
类组件3扩展了React.Component{
渲染(){
console.log(this.props.history);
回归试验;
}
}
使用路由器导出默认值(组件3);

您的意思是,如果我将我的组件传入withRouter,HOC将返回一个具有历史记录的组件以及附加到该组件的更多键值对it@Ladoo这是正确的。它将为您提供历史对象的属性和最接近的
的matchthanx。。这是我学到的新东西。。thanx也用于链接。但是我用了“反应路由器dom”来做这个