javascript - 我可以将 props 作为函数参数传递吗?或者这是一个不好的做法吗?

标签 javascript reactjs jsx

我想知道这样做在 react 世界中是否被认为是一种不好的做法?

const renderComparisonScore = (score) => {
 return (
  <div>
   {score}
  </div>
 )
}
const Visualization = ({ score }) = {
 return (
  <div>
   {renderComparisonScore(score)}
  </div>
 )
}

如您所见,我正在调用函数 renderComparisonScore 并传递参数,我知道执行此类操作的常规方法是将其作为 prop 传递,如下所示:

const ComparisonScore = ({ score }) => {
 return (
  <div>
   {score}
  </div>
 )
}
const Visualization = ({ score }) => {
 return (
  <div>
   <ComparisonScore score={score} />
  </div>
 )
}

我的问题是,我可以在 React 中将东西作为参数传递,而不是使用 props 传递东西,如果不是为什么?

最佳答案

我的.02:

在较大的应用程序中,如果您遇到这样的情况(例如,您需要映射一堆数据来构建 View )。

const MyComponent = props => {
  const cards = props.arrayOfData.map(el => (
    <div>Lots of view code and styling</div>
  ));

  // ...

  return (
    <div>
      [...other components]
      {cards}
    </div>
  );
};

这有助于尝试将任何给定组件中呈现的内容量最小化到更易于管理的数量。

除此之外,我肯定会坚持使用常规 Prop ,因为你想保持基于状态和逻辑的 View 与 View 的一些有序性

关于javascript - 我可以将 props 作为函数参数传递吗?或者这是一个不好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59291649/

相关文章:

reactjs - React 编译器最终得到意外的标记 <

javascript - Angular 2 子路由未解决

javascript - 如何用父对象或字段包装 JSON 对象?

reactjs - React,使用扩展类创建组件和简单 const = 函数之间的差异

javascript - 使用一个简单的组件(哑)创建按钮列表并使用父方法

javascript - 为什么它一直说用户未定义?

javascript - '' equals false in Javascript? What would be the safest way to distinguish between ' ' 和 bool 值 false?

javascript - 从后台调用弹出窗口上的函数。 (谷歌浏览器扩展)

Javascript 函数属性

javascript - 什么归类为 React 功能组件?