2017-12-26 4 views
1

コールバックを理解しようとしています。私は私が見つけたこの機能があります。コールバックの理解:引数が渡されていません

fetchMessages (projectId, callback) { 
    return $.ajax({ 
    url: `/projects/${ projectId }/messages`, 
    type: 'GET' 
    }, callback); 
}, 

を私は使用してその関数を呼び出す:私はcallback部分を理解していないよ

fetchMessages(this.projectId, (data) => { 
    this.messages = data.messages; 
}); 

を。 callbackは、jQueryがメッセージを取得したときにcallbackが結果になることを意味しますか?

答えて

3

AJAXが呼び出されると、javascriptはコードの次の行の実行を開始し、応答(非同期)を待機しません。しかし、それではどうすれば対処できますか?コールバックは答えの1つです。

関数(コールバック)関数は、関数に引数を渡します。前者の関数(コールバック)の目的は、後者の関数がタスクで終了したときに何らかのタスクを実行することです。 他の同様のアプローチは、約束事と発生者です。

+0

これはたくさんの感想をもたらします –

+2

javascript自体は非同期ではありません。これはシングルスレッドです – charlietfl

関連する問題