我正在尝试学习 React 并正在学习一些教程。然而,当我从我的终端运行 create-react-app
命令时,我的 App.js 文件不是我在教程中看到的 ES6 版本。相反,它包含以下内容:
import React from 'react';
import logo from './logo.svg';
import './App.css';
function App() {
return (
<div className="App">
<header className="App-header">
<img src={logo} className="App-logo" alt="logo" />
<p>
Edit <code>src/App.js</code> and save to reload.
</p>
<a
className="App-link"
href="https://reactjs.org"
target="_blank"
rel="noopener noreferrer"
>
Learn React
</a>
</header>
</div>
);
}
export default App;
而不是 ES6 风格的语法...
class App extends React.Component {
//...
}
这是为什么?我该如何更改它,以便在我运行创建应用程序的命令时,它会自动创建一个更新版本?
谢谢
最佳答案
功能组件是基于类的组件的对等体。两者都不比另一个更新(抛开钩子(Hook))。不过,由于 hooks,功能组件的使用频率比以前高得多。 . (事实上,由于钩子(Hook)不能与基于类的组件一起使用,因此可能有人认为功能组件可以访问比基于类的组件更新的功能......)
查看 create-react-app
的命令行开关,它似乎没有为创建基于类的 App
组件的选项你。但是,当然,如果您希望它是基于类的组件,那么在创建应用程序后立即进行一个小更改。您只需编辑 App.js
(或 App.tsx
)文件。
关于javascript - Create-react-app 命令不使用 ES6 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57377723/