我有一個異步函數sayHello()
被稱爲內部greeting()
功能:構建一個承諾沒有分解或拒絕
function greeting() {
let P = new Promise();
sayHello().then(function(){
//manipulate DOM
P.resolve();
}).catch(function(error)){
//manipulate DOM
P.reject();
});
return P;
}
我想greeting()
返回一個承諾,所以當sayHello
的工作是調用者就知道完了。但是這段代碼似乎並不正確,因爲它說Promise在構建時應該有resolve
和reject
函數。我該怎麼辦 ?
不要這樣做。相反,請直接返回您的承諾鏈。如果你已經有承諾,你永遠不需要'新的Promise()'。 – SLaks
我不想在問候語的調用者中操縱DOM,我想在問候語中做它。 –
這不會改變任何東西。您仍然可以退回承諾鏈。 – SLaks