javascript - A <Router> may have only one child element - Stack Overflow

I keep getting this error when trying to use links with react-router-dom A <Router> may have only

I keep getting this error when trying to use links with react-router-dom

A <Router> may have only one child element

This is my code:

import React, { Component } from 'react';
import logo from './logo.svg';
import './App.css';
import Layout from './Layout';

class App extends Component {
  render() {
    return (
      <div className="App">

        <header className="App-header">
          <img src={logo} className="App-logo" alt="logo" />
          <h1 className="App-title">Wele to React</h1>
        </header>
        <p className="App-intro">
          To get started, edit <code>src/App.js</code> and save to reload.
        </p>
        <Layout />
        <div>

        </div>
      </div>
    );
  }
}

export default App;

I keep getting this error when trying to use links with react-router-dom

A <Router> may have only one child element

This is my code:

import React, { Component } from 'react';
import logo from './logo.svg';
import './App.css';
import Layout from './Layout';

class App extends Component {
  render() {
    return (
      <div className="App">

        <header className="App-header">
          <img src={logo} className="App-logo" alt="logo" />
          <h1 className="App-title">Wele to React</h1>
        </header>
        <p className="App-intro">
          To get started, edit <code>src/App.js</code> and save to reload.
        </p>
        <Layout />
        <div>

        </div>
      </div>
    );
  }
}

export default App;
Share Improve this question edited Sep 28, 2017 at 18:12 mplungjan 179k28 gold badges182 silver badges240 bronze badges asked Sep 28, 2017 at 18:09 ThrokarThrokar 733 silver badges13 bronze badges 1
  • 1 What does your Layout ponent look like? Could you post that in the question as well? – northsideknight Commented Sep 28, 2017 at 18:17
Add a ment  | 

1 Answer 1

Reset to default 6

Exactly like the error sounds, you need to wrap everything inside of <Router /> in a <div>.

Before:

render() {
    return (
        <Router>
            <Link />
            <Link />
            <Link />
        </Router>
    )
}

After:

render() {
    return (
        <Router>
            <div>
                <Link />
                <Link />
                <Link />
            </div>
        </Router>
    )
}

React ponents can only have one child.

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745410336a4626498.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信