2016-05-24 4 views
0

この約束実行者の中でいくつかの約束が解決された後に実行されるコードを追加することは可能ですか?JS promise promises executor内の.then()にアクセス

それはこのようになります:

var loading = new Promise((resolve, reject) => { 
    app.initialize(); 
    loading.then(/* some extra code */); //loading is undefined 
    resolve(app); 
}); 

をしかし、このようにそれをやって、loadingはまだ未定義しているようです。

+0

いいえ、executorがすぐに 'Promise'コンストラクタによって実行されるため、約束のオブジェクトが返される前であっても – rand

+0

' app.initialize()は、 '、おそらく約束を返す必要がありますか?私はいくつかの文脈が失われているように感じる... –

答えて

4

短い答えではありません。これで問題です:

const loading = new Promise((resolve, reject) => { 
    app.initialize(); 
    resolve(app); 
}).then(app => { 
    // something else. 
}) 
関連する問題