Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/22.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 将行为添加到react路由器链接_Javascript_Reactjs_React Router - Fatal编程技术网

Javascript 将行为添加到react路由器链接

Javascript 将行为添加到react路由器链接,javascript,reactjs,react-router,Javascript,Reactjs,React Router,我的React应用程序中有一个带React路由器的非画布菜单,我正在菜单中使用 问题是,当用户单击时,菜单不会像在加载页面的HTML应用程序中那样消失 当状态反映菜单可见时,菜单将获得一个类-我想知道是否有一种简单的方法可以转换到链接,并在不重新编写整个函数的情况下从菜单中删除该类 您可以使用常规的标记,而不是附加onClick侦听器 render() { ... <a href="#" onClick={this.handleClick.bind(this, "your/route/he

我的React应用程序中有一个带React路由器的非画布菜单,我正在菜单中使用

问题是,当用户单击时,菜单不会像在加载页面的HTML应用程序中那样消失


当状态反映菜单可见时,菜单将获得一个类-我想知道是否有一种简单的方法可以转换到链接,并在不重新编写整个
函数的情况下从菜单中删除该类

您可以使用常规的
标记,而不是附加
onClick
侦听器

render() {
...
<a href="#" onClick={this.handleClick.bind(this, "your/route/here"}>Click me!</a>
...
}

handleClick(myRoute, e) {
   e.preventDefault(); //prevent default <a> navigation to href (or omit the attribute)
   //remove your class here
   this.context.router.push(myRoute);
}

能否将
onClick
方法添加到
组件中?
static contextTypes = {
  router: React.PropTypes.object
}