您的位置:首页技术文章
文章详情页

javascript - promise应用问题

浏览:65日期:2023-09-22 10:54:41

问题描述

function loadImageAsync(url) { return new Promise(function(resolve, reject) { var image = new Image(); image.onload = function() { resolve(image); }; image.onerror = function() { reject(new Error(’Could not load image at ’ + url)); }; image.src = url; });}

想知道的是这个方法怎么用呢?我输入了URL,然后再then里获取对象image?可是我测了,没有反应!

问题解答

回答1:

loadImageAsync(’./img/news-1.png’).then((img) => { document.getElementById('app').appendChild(img) console.log(img)})

这么调用,在then的参数就是resolve的参数, 也就是image对象,把这个对象append到p上就可以实现功能

这是最终结果

javascript - promise应用问题

这是console

javascript - promise应用问题

回答2:

loadImageAsync(url).then(function(img) { doSomething(); }).catch(function(err) { handleError(err); });回答3:

可以的 ,我在浏览器里试过了:

function loadImageAsync(url) { return new Promise(function(resolve, reject) { var image = new Image(); image.onload = function() { resolve(image); }; image.onerror = function() { reject(new Error(’Could not load image at ’ + url)); }; image.src = url; });}loadImageAsync(’https://www.baidu.com/img/bd_logo1.png’).then(function(){alert('jiazai wancheng')})

标签: JavaScript
相关文章: