我已经学习ReactJS一段时间了,它成功地让我想知道常见的HTML元素是如何构建的。然后,我遇到了<audio>
和其他一些常见的标签。
从我读到的内容来看,我觉得对HTML元素"做某事"的主要方法是向元素添加props/属性,对吧?但是现在为什么我们不能通过写入play='true'
道具/属性来播放<audio>
元素中的音频呢?或者也许props="play"
?
相反,我们必须获取对它的 DOM 引用并调用附加到它的函数?
这种设计背后有什么理由吗?
<audio />
标签甚至没有play属性。React 不会为你创建不存在的属性,它们必须已经存在。
这些是音频标记具有的现有属性。https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio
以下是添加反应属性的文档https://reactjs.org/docs/dom-elements.html
如果要自动播放<audio>
元素,则必须将属性设置为 autoplay="true"
。该属性不称为play
,play()
是HTMLMediaElement
上的一种方法。
https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/playhttps://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/autoplay