【问题标题】:I'm at a loss: Line 35:9: Parsing error: Expected corresponding JSX closing tag for <Switch>我不知所措:第 35:9 行:解析错误:<Switch> 应有相应的 JSX 结束标记
【发布时间】:2020-12-21 00:22:12
【问题描述】:

我的错误信息:

  Line 31:16:  Parsing error: Unterminated JSX contents

  29 |           </Route>
  30 |         </Switch>
> 31 |       </Router>
     |                ^
  32 |     );
  33 |   }
  34 | }

我的代码:

import React from 'react';
import { BrowserRouter as Router,
         Switch,
         Route,
         Link
} from 'react-router-dom';

class App extends React.Component {
  render() {
    return (
      <Router>
          <nav>
          <ul>
            <li>
              <Link to="/">Home</Link>
            </li>
            <li>
              <Link to="/login">Login</Link>
            </li>
          </ul>
          </nav>
        //<Switch for Router>
        <Switch>
          <Route path="/Login">
            <Login />
          </Route>
          <Route path="/">
            <Home />
          </Route>
        </Switch>
      </Router>
    );
  }
}

import Home from './pages/Home';
import Login from './pages/Login';

export default App;

这是说我没有终止某些东西,但我没有看到它。我一行一行地走了20次。也许我只是需要另一双眼睛,或者我忘记了什么。非常感谢任何反馈!

【问题讨论】:

  • 我认为 JSX 不知道对您的代码进行这种类型的评论。删除//&lt;Switch for Router&gt;

标签: reactjs jsx react-router-dom


【解决方案1】:
//<Switch for Router>

如果你在 JSX 中,这不会创建评论。它呈现一个带有两个斜杠的字符串,后跟一个 &lt;Switch&gt; 元素的打开标记,带有 forRouter 两个属性 true

如果要保留评论,请将其更改为:

{/*<Switch for Router>*/}

【讨论】:

    猜你喜欢
    • 2022-01-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-14
    • 2019-01-24
    • 2018-04-20
    • 2019-05-02
    相关资源
    最近更新 更多