解决全局对象后执行jQuery函数



在我的页面中,我有以下将加载的脚本:

<script src="~/js/dir/search.js"></script>
<script src="~/js/dir/item.js"></script>

search.js文件中我在全局范围内使用ES6:

fetch(endpoint)
    .then(blob => blob.json())
    .then(data => members.push(...data));

和内部item.js我使用此脚本显示members对象:

$(window).load(() => {
   console.log(members);
});

但它在控制台中打印undefined,我如何确保如果search.js完全加载,则items.js给出结果?

您可以将API暴露在一个文件中以注册另一个文件。

search.js:

var p = fetch(endpoint);
p.then(…);
window.extraHandler = function (fn){
    p.then(fn);
}

item.js:

extraHandler(function(){
    console.log(members);
});

最新更新