React iframe youtube:在非对象上调用Object.defineProperty

时间:2017-04-21 03:17:46

标签: javascript reactjs iframe youtube

我制作了一个组件,在我的React应用程序中嵌入了一个YouTube视频,效果很好。

要做到这一点,我正在使用iframe。

 <div className="embed-responsive embed-responsive-16by9">
            <iframe className="embed-responsive-item" src={`${BASE_URL}${videoId}`}/>
 </div>

但即使它有效,我不知道为什么,但我收到了这个错误。

  

sw.js:5未捕获TypeError:在非对象上调用Object.defineProperty

这似乎是一个youtube问题,因为如果我在iframe中使用其他网址 比:https://www.youtube.com/embed/ZJD1zoAaCmo 例如:https://www.dailymotion.com/embed/video/xwr14q

我不会再有错误了

如果你有任何想法,那将非常感激

先谢谢!

1 个答案:

答案 0 :(得分:0)

你应该在你的html中使用class而不是className。

是的,你确实在js代码中将它们称为className,但保留字是html中的class。

在所有情况下,Javascript都无法像这样识别className,因此错误。

编辑:实际上,className用于React,class用于普通html。此代码使用Bootstrap的功能,它使用html标记。