javascript - react 路由器组件不呈现

标签 javascript reactjs components react-router render

我一直在使用 React Router 并尝试将我的 App.js 和 Car.js 组件路由在一起。我在这两个组件中写了 {this.props.children} 但它仍然无法正常工作。当我部署我的应用程序时,我的本地主机页面上没有任何地方显示 Car.js 组件的任何指示。

这是我的 App.js:

import React, { Component } from 'react';
import Login from './Login.js';
import Search from './Search.js';
import Message from './Message.js';
import Car from './Car.js';
import {BrowserRouter, Route} from 'react-router-dom';

export default class App extends React.Component {
  render() {
    return (
      <div>
        <Login />
        <Search />
        <Message />
            <div>
                <BrowserRouter> 
                <Route path="/Car" component={Car}/>
                </BrowserRouter>
                {this.props.children}
            </div>
      </div>

    );
  }
}

汽车.js:

// Car page example 
import React, { Component } from 'react';
import {Router, Route} from 'react-router';

class Car extends Component {
    render(){
        return(
            <div>
                <h1> Cars page </h1>
                {this.props.children}
            </div>
        );
    }
}

export default Car;

最佳答案

因此您至少需要 2 条路线,除非/Cars 是唯一的页面,在这种情况下您不需要路线! :)

在此示例中,Home当您的网址类似于 http:/www.exmaple.com/ 时,将显示该组件

Cars组件将在 url 为 http:/www.exmaple.com/Cars 时显示

const App = () => (
    <div>
        <Login />
        <Search />
        <Message />
        <div>
            <BrowserRouter>
                // you're going to want a default view
                <Route exact path="/" component={Home} />
                // this will be displayed when your url has /Car at the end of it
                <Route path="/Car" component={Car} />
            </BrowserRouter>
        </div>
    </div>
);

如果您不想手动输入 URL 来更改 View ...您将必须包含 <Link /><NavLink />指向相应的 View 。

尝试 <NavLink to="/Cars" />并且不要忘记添加 { ... NavLink ... } from "react-router-dom"

你可能想看看 react-router WEB documentationReactTraining.com's react-router页。他们是创建和维护 react-router 的人.也有很好的文档!

关于javascript - react 路由器组件不呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45173804/

相关文章:

javascript - 两次点击 - 不同的 Action (相同的 div)

javascript - Bootstrap Tab 实际页面的 URL 错误

javascript - 按容器更改字体大小

jquery - 单页应用程序中的 CSS 库

reactjs - 无法部署 React 应用程序

components - 如何将组件按行宽度均匀分布?

javascript - 如何使用 jquery 或 javascript 获取数组中选中的复选框和关联的文本框值并将该值附加到 url

javascript - 当我将组件从无状态转换为有状态时,数据没有及时读取;

android - 利用 Android 导航组件处理具有初始屏幕 Activity 的深层链接

node.js - 如何根据 Onion/Clean Architecture 原则实现 NodeJS 组件?