前提・実現したいこと
YoutubeのiFrameAPIを使ってサイトを作っています。
import文を使って、videoIdは別ファイルに読み込ませてwebpackでまとめたいのですが
import文を書くと以下の関数が
function onYouTubeIframeAPIReady() {
が動かなくなります。
該当のソースコード
javascript
1//iframe.js 2 3import ytData from './data'; 4 5var tag = document.createElement('script'); 6tag.src = "https://www.youtube.com/iframe_api"; 7var firstScriptTag = document.getElementsByTagName('script')[0]; 8firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); 9 // 各プレーヤーの格納 10var ytPlayer = []; 11// 各動画情報 12 13// 各プレーヤーの埋め込み 14function onYouTubeIframeAPIReady() { 15 for(var i = 0; i < ytData.length; i++) { 16 ytPlayer[i] = new YT.Player(ytData[i]['area'], { 17 videoId: ytData[i]['id'], 18 playerVars: { 19 rel: 0 20 }, 21 events: { 22 'onReady': onPlayerReady 23 } 24 }); 25 } 26} 27 28function onPlayerReady(e) { 29 for (var i = 0; i < ytData.length; i++) { 30 if(e.target.getIframe().id == ytData[i]['area']) { 31 console.log(ytData[i]['area'] + 'のプレーヤー準備完了しました。'); 32 } 33 }; 34}
javascript
1 2// data.js 3 4var ytData = [ 5 { 6 id: 'hoge', 7 area: 'player' 8 }, { 9 id: 'hoge', 10 area: 'player01' 11 } 12]; 13 14export {ytData}; 15
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー