import { Promise } from 'es6-promise';
function loadScript(url) {
let script = Array.from(document.scripts).find((s) => s.src === url);
if (script) {
return Promise.resolve(url);//①
}
return new Promise(function(resolve, reject) { //②
script = document.createElement('script');
script.addEventListener('load', function() { resolve(url); }, false);
script.addEventListener('error', function() { reject(url); }, false);
script.src = url;
document.body.appendChild(script);
});
1、②处是定义了一个Promise对象,和①处的区别是什么?
2、①处Promise.resolve(url) 为什么把这个url放进去?
这段代码的意思不应该是该url加载完之后,执行。 它怎么知道url什么时候加载完?
慕的地10843
隔江千里
随时随地看视频慕课网APP
相关分类