1

!async プラグインを使用して YouTube Iframe API を読み込むのに少し問題があります。

マップの例は機能するため、現在、基本的なセットアップは問題ないと想定しています。

define('something', [
'async!http://maps.google.com/maps/api/js?sensor=false'
], function () { console.log('loaded..'); } 
);

// doesn't work
define('something', [
'async!https://www.youtube.com/iframe_api!callback'
], function () { console.log('loaded..'); } 
);

// doesn't work
define('something', [
'async!https://www.youtube.com/iframe_api!onYouTubeIframeAPIready'
], function () { console.log('loaded..'); } 
);

// doesn't work
define('something', [
'async!https://www.youtube.com/iframe_api'
], function () { console.log('loaded..'); } 
);

それらはすべて、Uncaught Error: Load timeout for modules: async! を取得します。https://www.youtube.com/iframe_api!onload_unnormalized2,async!https://www.youtube.com/iframe_api!onload http://requirejs.org/docs/errors.html#timeout など (設定によって異なります) 2 番目の後 !) これはおそらく、コールバック関数 onYouTubeIfraneAPIready() が呼び出されないか、!async プラグインがそれを認識していないことを意味します。

これはおそらく、コールバック関数が呼び出されないことを意味します。自分でコールバック関数を定義した場合、それは機能します..しかし、それでもタイムアウトエラーが発生します。

window.onYouTubeIframeAPIready = function () {
console.log('youtube api usual callback');
}
4

1 に答える 1

2

私はこれを解決し、解決策をプラグインのリポジトリに提供しました。 https://github.com/millermedeiros/requirejs-plugins/pull/39

于 2013-10-16T21:21:31.057 に答える