【问题标题】:Why doesn't create-react-app use an arrow function component?为什么 create-react-app 不使用箭头函数组件?
【发布时间】:2020-01-22 00:52:27
【问题描述】:

现在(从今年年初开始)当您使用 Create React App 引导 React 应用程序时,它现在会生成一个函数组件而不是类组件:

function App() {
  // ...
}

我想知道为什么他们不使用箭头函数组件,因为 ES6 箭头函数已经出现了一段时间,再加上你 don't have to bind this

const App() => {
  // ...
};

使用箭头函数组件是否有任何明显的缺点,可能导致他们做出该决定,或者仅仅是语法更熟悉?

【问题讨论】:

  • 使用hooks而不是类的功能组件现在是新事物。
  • 是的,但这与我的要求无关,这就是为什么使用常规函数而不是箭头函数组件的原因。

标签: javascript reactjs create-react-app


【解决方案1】:

他们使用常规函数来使其与 react 文档保持一致。

来源:https://github.com/facebook/create-react-app/pull/6655

另外你不必绑定这个

这里并没有真正的好处,因为this 不会在功能组件中使用。

【讨论】:

    【解决方案2】:

    据我所知,在下一个版本中,类组件和函数组件之间会有性能差异,所以这就是为什么它们要改为函数,关于箭头函数,我喜欢它而不是常规函数,因为你说不需要绑定在里面,但是有一些东西你不应该在里面使用箭头,你可以read them from here。所以这可能是因为这些原因。希望它有所帮助

    【讨论】:

      猜你喜欢
      • 2019-09-17
      • 2019-09-19
      • 2019-09-21
      • 2017-11-19
      • 1970-01-01
      • 2020-11-17
      • 1970-01-01
      • 1970-01-01
      • 2018-08-24
      相关资源
      最近更新 更多