为什么我们不能通过属性/道具播放<audio>?

时间:2017-11-18 14:40:53

标签: javascript html reactjs

我已经学习了一段时间的ReactJS,它成功地让我想知道常见的HTML元素是如何构建的。然后,我遇到了<audio>和其他一些常见标签。

从我读到的内容来看,我认为对HTML元素“做某事”的主要方法是向元素添加props / attribute,对吧?但是现在为什么我们不能通过写<audio> props /属性来在play='true'元素中播放音频?或者也许是props="play"

相反,我们必须获取对它的DOM引用并调用附加到它的函数?

该设计背后是否有任何推理?

2 个答案:

答案 0 :(得分:0)

<audio />标记甚至没有播放属性。 React不会为你创建不存在的属性,它们必须已经存在。

这些是音频标签具有的现有属性。 https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio

以下是添加react属性的文档 https://reactjs.org/docs/dom-elements.html

答案 1 :(得分:0)

如果您想自动播放<audio>元素,则必须设置属性autoplay="true"。该属性未被称为playplay()HTMLMediaElement上的一种方法。

https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/play https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/autoplay