开发者社区 问答 正文

#React displayName类属性的用途是什么?

#React displayName类属性的用途是什么?

展开
收起
因为相信,所以看见。 2020-05-08 10:55:56 2569 分享 版权
1 条回答
写回答
取消 提交回答
  • 阿里,我所有的向往

    isplayName字符串用于调试消息。通常,您不需要显式设置它,因为它是从定义组件的函数或类的名称推断出来的。如果要显示其他名称以进行调试或创建高阶组件时,可能需要显式设置它。例如,要简化调试,请选择一个显示名称,该名称传达的是withSubscription HOC的结果。

    function withSubscription(WrappedComponent) {
      class WithSubscription extends React.Component {/* ... */}
      WithSubscription.displayName = `WithSubscription(${getDisplayName(WrappedComponent)})`;
      return WithSubscription;
    }
    function getDisplayName(WrappedComponent) {
      return WrappedComponent.displayName || WrappedComponent.name || 'Component';
    }
    
    2020-05-08 10:56:27
    赞同 展开评论