6

我开始在我的 react-modal 组件上收到此警告:

警告:失败的 propType:contentLabel未在 中指定所需的道具Modal

它不会阻止模式正常工作,我只是在开发工具控制台中看到警告。我可以通过指定一些随机字符串来传递这个道具,但我不明白它的实际用途以及为什么需要它。

4

2 回答 2

11

contentLabel提高可访问性。您可能没有注意到它,但在某些情况下,这prop可以帮助您的用户了解模式的含义。从他们的存储库

Modal 对象有两个必需的道具:

  • isOpen渲染它的孩子。
  • contentLabel改进 a11y,因为v1.6.0.

的值在模态元素上contentLabel设置为 an 。aria-label这有助于辅助技术(如屏幕阅读器)为原本匿名的元素添加标签。例如,有视力障碍的人在添加时可以从您的模态中获得更多意义。

于 2016-12-27T12:47:42.573 回答
0

在这个https://github.com/reactjs/react-modal/blob/master/dist/react-modal.js contentLabel 和 isOpen 设置为必需的,就像这样 contentLabel:React.PropTypes.string.isRequired 如果你删除 .isRequired 然后您可以在不定义 contentLabel 属性的情况下使用模式。

于 2016-12-27T13:05:25.917 回答