我想用 React 和多个 HTML 页面构建一个 Web 应用程序。例如 login.html 和 index.html。我已经创建了这些 HTML 页面并使用我的后端将它们映射到 URI。所以我有 localhost:8080/login 和 localhost:8080/index。不幸的是,React 只使用 index.html 文件来渲染内容!
所以 index.html 工作并且显示了 React 内容:localhost:3000/index.html
<!-- index.html -->
...
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="wizard"></div>
</body>
...
<!-- index.tsx -->
import * as React from 'react';
import * as ReactDOM from 'react-dom';
import FetchData from "./FetchData";
import 'bootstrap/dist/css/bootstrap.min.css';
import './index.css';
import registerServiceWorker from './registerServiceWorker';
ReactDOM.render(
<div className="d-flex flex-column">
<div className="bg-dark text-light AppHeading">Self-Service-Webwizard</div> …Run Code Online (Sandbox Code Playgroud) 我刚开始使用 React Router v4,无法使用 Browserrouter 的历史记录。例如,当我尝试访问时this.props.history.push("/")出现错误:
TS2339: Property 'history' does not exist on type 'Readonly<{ children?: ReactNode; }> & Readonly<{}>'
我正在将 React Router v4 与 Browserrouter 一起使用,并将 React 与 Typescript 一起使用。来自 React Router 的 Route 的三个道具(位置、历史、匹配)似乎没有传递给它的组件。 我在 Typescript 或 React Router 上做错了什么吗?
索引.tsx
import * as React from 'react';
import * as ReactDOM from 'react-dom';
import 'bootstrap/dist/css/bootstrap.min.css';
import './index.css';
import {
BrowserRouter as Router, Route
} from 'react-router-dom';
import Login from "./Login";
import Questionnaire from "./Questionnaire";
import Registration …Run Code Online (Sandbox Code Playgroud)