javascript - 当在 React 中使用路由并路由无状态函数时,没有渲染
问题描述
这是代码
当我尝试在 localhost:3000/a 路由时,什么都没有出现
import React, { Component } from "react";
import ReactDOM from "react-dom";
import { BrowserRouter as Router } from "react-router-dom";
import Route from "react-router/Route";
//import Home from "./components/Home";
const Home = () => {
return (
<div>
<h6>East or West home is The best </h6>
</div>
);
};
class App extends Component {
state = {};
render() {
return (
<Router>
<div className="app">
<Route path="/a" Component={Home} />
</div>
</Router>
);
}
}
export default App;
ReactDOM.render(<App />, document.getElementById("root"));
解决方案
使用 Route 而不是 Router 并将您的应用程序包装在 Router 下,如下所示
import React, { Component } from "react";
import ReactDOM from "react-dom";
import { Route, Switch } from "react-router-dom";
import { BrowserRouter as Router } from 'react-router-dom';
const Home = () => {
return (
<div>
<h6>East or West home is The best </h6>
</div>
);
};
class App extends Component {
state = {};
render() {
return (
<div className="app">
<Route>
<Route path="/a" Component={Home}
/>
</div>
);
}
}
export default App;
ReactDOM.render(<Router><App /></Router>, document.getElementById("root"));
推荐阅读
- python - 如何创建 3d 散点图
- java - 如何安全地从另一个线程处理模态对话框?
- amazon-web-services - AWS::ApiGateway::Method 在每次部署中都被删除
- apple-push-notifications - WatchKit Complication 推送应用标识符/证书(WWDC20)
- node.js - node-postgres:在 client.end() 之后 Postgres 客户端仍然连接?
- google-cloud-platform - GCP AI Notebook 无法访问存储桶
- python - OS 库或其他 python 库中是否有一个函数可以检查文件扩展名是什么
- angular - IIS:找不到页面时重定向到索引
- hyperledger-fabric - 调试 TLS 握手失败
- java - 无法在rest api中传递字符串数组