Javascript 创建React功能组件时,最好使用fat arrow函数还是常规ES5函数?

Javascript 创建React功能组件时,最好使用fat arrow函数还是常规ES5函数?,javascript,reactjs,ecmascript-6,Javascript,Reactjs,Ecmascript 6,创建功能组件时,哪一个更好 这个 ES5版本编译为 function Search(_ref) { var searchTerm = _ref.searchTerm, onChange = _ref.onChange, children = _ref.children; }; 有什么想法吗?这完全取决于你自己的风格偏好,不管怎样 我更喜欢声明,因为它们更具声明性,需要的标记更少,而且会被提升。只有在使用简洁的主体时,箭头函数才会变得更加紧凑。在什么方面更可取?据我所知,

创建功能组件时,哪一个更好

这个

ES5版本编译为

function Search(_ref) {
    var searchTerm = _ref.searchTerm,
    onChange = _ref.onChange,
    children = _ref.children;
};

有什么想法吗?

这完全取决于你自己的风格偏好,不管怎样


我更喜欢声明,因为它们更具声明性,需要的标记更少,而且会被提升。只有在使用简洁的主体时,箭头函数才会变得更加紧凑。

在什么方面更可取?据我所知,这完全取决于您的风格偏好。如果你正在寻找风格指南,每个人都有自己的风格指南。然而,在一家大型企业中,AirBnB是一家非常突出的企业,这家企业可能会做出反应。这家企业的反应并不具体,它回答了一个问题:一般来说,这里没有“首选”这类东西。你应该知道箭头函数和常规函数的区别,然后选择一个。在这个片段的上下文中,它们之间没有区别。@azium这当然是真的。事实上,还有细微差别需要讨论<代码>函数表达式和箭头函数是不等价的,正如Bergi答案中的链接所解释的,但是在您链接到的问题中没有讨论它们之间的区别。
function Search({searchTerm, onChange, children}) {
  return (
    <form>
      {children}
      <input
        type='text'
        value={searchTerm}
        onChange={onChange}/>
    </form>
  );
}
var Search = function Search(_ref) {
    var searchTerm = _ref.searchTerm,
    onChange = _ref.onChange,
    children = _ref.children;
};
function Search(_ref) {
    var searchTerm = _ref.searchTerm,
    onChange = _ref.onChange,
    children = _ref.children;
};