繁体   English   中英

Create-react-app 命令不使用 ES6 类

[英]Create-react-app command doesn't use ES6 classes

我正在尝试学习 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 {
  //...
}

这是为什么,我该如何更改它,以便当我运行命令创建应用程序时,它会自动创建更新的版本?

谢谢

功能组件与基于类的组件是对等的。 两者都不比另一个更新(除了挂钩)。 不过,由于hooks ,功能组件的使用频率比以前要高得多。 (实际上,由于钩子不能与基于类的组件一起使用,因此可能存在一种论点,即功能组件可以访问比基于类的组件更新的功能......)

查看create-react-app的命令行开关,它似乎没有为您创建基于类的App组件的选项。 但是,当然,如果您希望它是基于类的组件,那么在创建应用程序后立即进行一个小的更改。 您只需编辑App.js (或App.tsx )文件。

创建 React App 2.0

我使用了以下对我有用的命令。 我也通过了 react-scrips 版本。

npx

npx create-react-app my-app --scripts-version=react-scripts@2.0

新产品经理

npm init react-app my-app --scripts-version=react-scripts@2.0

创建 React App 2.0:Babel 7、Sass 等

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM