2017-08-15 13 views
-1

當我使用Dojo框架創建類時,該類有一個使用異步函數的方法,還有什麼可以使它只返回最終值,而不是Promise或其他?異步函數如何返回最終值?

+1

你不能把一個異步函數的同步 - 曾經 –

+0

真的解決不了 – xiaodaxin

+0

真的,異步函數(例如像異步的XMLHttpRequest)無法打開同步 - 它實際上是相當明顯的,爲什麼 –

回答

0

你必須使用一個回調函數,例如:

function myDojoFunction(id, callback) { 
    require(['dojo/dom'], function (dom) { 
     if (dom.byId(id)) callback (true); 
    }); 
} 

調用函數:

myDojoFunction('myId', function (exists) { 
    if (exists) console.log('i'm here'); 
    else console.log('i'm not here'); 
}); 

這是返回的東西,如果你是AMD的道場,而不是傳統的工作方式。

相關問題