javascript - promise應用問題
問題描述
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上就可以實現功能
這是最終結果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')})
相關文章:
1. html5 - 有可以一次性把所有 css外部樣式轉為html標簽內style=" "的方法嗎?2. javascript - 求解答:實例對象調用constructor,此時constructor內的this的指向?3. javascript - 如何將一個div始終固定在某個位置;無論屏幕和分辨率怎么變化;div位置始終不變4. python - 如何判斷爬蟲已經成功登陸?5. javascript - 原生canvas中如何獲取到觸摸事件的canvas內坐標?6. javascript - 這不是對象字面量函數嗎?為什么要new初始化?7. javascript - vscode alt+shift+f 格式化js代碼,通不過eslint的代碼風格檢查怎么辦。。。8. javascript - 有什么比較好的網頁版shell前端組件?9. javascript - [js]為什么畫布里不出現圖片呢?在線等10. html - vue項目中用到了elementUI問題
