Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.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_React Component - Fatal编程技术网

Javascript 如何在单击路由器链接时隐藏组件

Javascript 如何在单击路由器链接时隐藏组件,javascript,reactjs,react-router,react-component,Javascript,Reactjs,React Router,React Component,我有我的app.js在那app.js我想在点击路由器时显示一些组件。 这是我的App.jscode import React from 'react'; import {BrowserRouter, Route} from 'react-router-dom'; import Header from './Header' import Slider from './Slider'; import Section from './Section'; import Footer from './Fo

我有我的
app.js
在那
app.js
我想在点击路由器时显示一些组件。 这是我的
App.js
code

import React from 'react';
import {BrowserRouter, Route} from 'react-router-dom';
import Header from './Header'
import Slider from './Slider';
import Section from './Section';
import Footer from './Footer';
import Register from './Register';
class IndecisionApp extends React.Component {
    render() {

        return (
            <BrowserRouter>
                <div className="wrapper"> 

                    <Header/>
                    <Route path="/register" component={Register}></Route>
                    <Slider />
                    <Section /> 
                    <Footer />
                </div>
            </BrowserRouter>
        );
    }
}

export default IndecisionApp;\
从“React”导入React;
从“react router dom”导入{BrowserRouter,Route};
从“./头”导入头
从“./Slider”导入滑块;
从“./节”导入节;
从“./Footer”导入页脚;
从“./寄存器”导入寄存器;
类decisionApp扩展了React.Component{
render(){
返回(
);
}
}
导出默认优柔寡断PP\

当我点击路由器时,我想隐藏
部分
滑块
组件。

你做错了

正确的方法是这样

  <BrowserRouter>
      <div className="wrapper"> 
          <Header/>
         <Switch>
          <Route path="/register" component={Register}></Route>

        </Switch>
          <Slider />
          <Section /> 
          <Footer />
      </div>
   </BrowserRouter>


更多关于react路由器的信息

假设您有一个
主页
组件,该组件仅显示为登录页,包括
部分和
幻灯片

所以基本上应该有两条路线,一条是登陆,另一条是注册,如下所示

<Route path="/register" component={Register} />
<Route exact path="/" component={Home} />

但是,由于您的主页/登录/索引页应该同时显示部分和幻灯片,所以我稍微更改了主页路线,最后总结了以下代码

      <BrowserRouter>
        <div className="wrapper">
          <Header />
          <div>
            <Link to="/">Home</Link>
            <Link to="/register">Register</Link>
          </div>
          <Switch>
            <Route path={"/register"} component={Register} />
            <Route
              exact
              path="/"
              render={() => (
                <React.Fragment>
                  <Home />
                  <Slider />
                  <Section />
                </React.Fragment>
              )}
            />
          </Switch>
          <Footer />
        </div>
      </BrowserRouter>

家
登记
(
)}
/>

请告诉我,如果您的想法有所不同

它工作正常,但当我从中删除
主题
时不显示滑块也不显示部分。当您访问url
localhost:3000/topics
时,只有滑块组件会显示我不希望它像这样。我希望所有内容都应该显示在索引上,除了注册,当我点击
register
时,完整注册页面应该显示出来我已经解决了这个问题现在我有另一个问题告诉我你的第二个问题