【发布时间】:2022-01-09 00:50:54
【问题描述】:
我已经在react docs 和stackoverflow 上读到,对于我现有的错误:'React' must be in scope when using JSX 我应该禁用一些 ESLint 的东西,但我已经从 VSCode 中完全取消了 ESLint,但我仍然收到错误。
我使用create react app 与typescript 和react-router-dom 创建了一个简单的反应应用程序。 React 是 v.17+
这是我的代码:
src/index.tsx
import React from "react";
import ReactDOM from "react-dom";
import "./index.css";
import App from "./App";
import { BrowserRouter } from "react-router-dom";
ReactDOM.render(
<React.StrictMode>
<BrowserRouter>
<App />
</BrowserRouter>
</React.StrictMode>,
document.getElementById("root")
);
src/App.tsx
import "./App.css";
import { Route, Routes } from "react-router-dom";
import Home from "views/Home";
function App() {
return (
<Routes>
<Route path="/" element={Home} />
</Routes>
);
}
export default App;
src/views/Home.tsx
const Home = () => {
return <div>Home</div>;
};
export default Home;
如果我在App.tsx 和Home.tsx 之上导入import React from "react";,那么它可以毫无问题地编译。但是我对这个解决方案并不满意,因为我使用的是 React v.17+
【问题讨论】:
-
你用过
npx create react app吗? -
@shubhamjha 是的,就像他们的文档中解释的那样
npx create-react-app my-app --template typescript