React 组件“displayName”是做什么用的?

新手上路,请多包涵

我知道通过添加 displayName 属性来命名反应组件 是否被认为是一种好习惯,但我不确定我知道为什么。在 React 文档中,它说:

displayName 字符串用于调试消息。 JSX 自动设置这个值;深入了解 JSX。

为什么这个这么重要?如果我不添加会怎样? (到目前为止,我还没有它,调试也没有问题。)

关于如何命名组件是否有任何建议/良好做法?

原文由 Kuf 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2k
1 个回答

我一直将 displayName 设置为与我分配给它的变量相同的名称。这将在开发构建中使用,因为它通过生产构建中的死代码消除而被删除,并且不应在您的应用程序中依赖。

至于它用在哪里,主要是在 react 错误消息中。这就是为什么提到它对调试很有价值的原因。如果无法派生名称,则错误消息默认为 Component 当您的项目中有多个组件时,这很难调试。

以下是一些在反应源中引用 displayName 的错误消息:

无效退货

内联样式错误

原文由 kwelch 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进