为什么react-modal需要prop contentLabel?

时间:2016-12-27 12:42:09

标签: reactjs react-modal

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

  

警告:propType失败:必需的道具contentLabel没有   在Modal中指定。

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

2 个答案:

答案 0 :(得分:7)

BigDecimal改善了辅助功能。您可能没有注意到它,但在某些情况下,此contentLabel可以帮助您的用户了解模式的含义。来自their repository

  

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

     
      
  • prop来渲染自己的孩子。
  •   
  • isOpen改善a11y,因为contentLabel
  •   

v1.6.0的值在模态元素上设置为aria-label。与屏幕阅读器一样,这有助于assistive technology向元素添加标签,否则该标签将是匿名的。例如,有视力障碍的人在添加时可以更好地理解你的模态。

答案 1 :(得分:0)

在这个https://github.com/reactjs/react-modal/blob/master/dist/react-modal.js内容中,如果删除.isRequired,则需要设置isOpen,如同此contentLabel:React.PropTypes.string.isRequired,则可以使用模态而不定义contentLabel prop。