这是我用 JS 编写的第一个模块,我想确保我做对了。这将是一个简单的画廊模块,但我希望它也能够显示 youtube 和 vimeo 电影。在我的模块中,我有一个名为 init() 的函数。在我首先显示画廊之前,我想添加所有必要的库,比如 youtube iframe api 和 vimeo js api。只有在它们加载后我才想显示画廊。所以我的模块看起来像这样:
myModule = {};
myModule.isYoutubeApiLoaded = false;
myModule.isVimeoApiLoaded = false;
myModule.controller;
myModule.init = function (){
myModule.loadYoutubeapi();
myModule.loadVimeoApi();
myModule.startController();
}
现在 startController 函数如下所示:
myModule.startController = function (){
myModule.controller = setInterval(function(
if (myModule.isYoutubeApiLoaded && myModule.isVimeoApiLoaded ) {
myModule.buildGallery();
clearInterval(myModule.controller);
}
), 5);
}
在 loadYoutubeapi() 和 loadVimeoApi() 中,我在加载脚本时设置给定的标志。这是一个好方法吗?