reactjs React-mdl错误:不变式失败:您不应该使用< Link>外部< Router>的网站是不是得到路由

iih3973s  于 2023-06-05  发布在  React
关注(0)|答案(2)|浏览(151)

main.js

import React from 'react';
import {BrowserRouter as Router, Route, Switch, Link } from 'react-router-dom';
import home from './home';
import about from './about';
import menu from './menu';
import gallery from './gallery';
import franchise from './franchise';

const Main = () => (

    <Switch>

        <Route exact path ="/" component={home} />
        <Route  path ="/about" component={about} />
        <Route  path ="/menu" component={menu} />
        <Route  path ="/gallery" component={gallery} />
        <Route  path ="/franchise" component={franchise} /> 

    </Switch>
)
export default Main;

nav.js

import React, { Component } from 'react';
import { Link } from 'react-router-dom';
import { BrowserRouter as Router, Route } from 'react-router-dom';
import { Layout, Header, Navigation, Drawer, Content} from 'react-mdl';
import Main from './main';
export default class CustomNavbar extends Component {
  render() {
    return (
<div className="demo-big-content">
    <Layout>
        <Header title="CHEFSTYLE" scroll>

            <Navigation>
                <Link href="/" to="/">Home</Link>
                <Link href="/about" to="/about">About</Link>
                <Link href="/menu">Menu</Link>
                <Link href="/gallery">Gallery</Link>
                <Link href="/franchise">Franchise</Link>
            </Navigation>

        </Header>
        <Drawer title="CHEFSTYLE">
            <Navigation>
                <Link href="/" to="/">Home</Link>
                <Link href="/about" to="/about">About</Link>
                <Link href="/menu">Menu</Link>
                <Link href="/gallery">Gallery</Link>
                <Link href="/franchise">Franchise</Link>
            </Navigation>
        </Drawer>
        <Content>
            <div className="page-content" />
            <Main/>
        </Content>
    </Layout>
</div>  )

  }
}

错误:Invariant失败:你不应该在不变量D:/pandemic/pandemicmateria/kupsmaterial/node_modules/tiny-invariant/dist/tiny-invariant.esm.js:11(匿名函数)D:/pandemic/pandemicmateria/modules/Link.js:84****如果我在main.js中使用Router标签而不是Switch,并且如果我在nav.js中用Router标签包围导航标签,则意味着我没有得到任何错误,但我没有得到输出...我的意思是页面没有路由相对于链接

7kjnsjlb

7kjnsjlb1#

在Index.js中添加BrowserRouter,如下所示,对我有用。

ReactDOM.render (
  <BrowserRouter>
    <App />
  </BrowserRouter>,
  document.getElementById('root')
);
5uzkadbs

5uzkadbs2#

如果整个应用程序都在路由器中,则只能使用Link访问路由。

<BrowserRouter>
<Layout>
        <He....

</Layout>
</BrowserRouter>

相关问题