一、基本介紹
1、promise 是個容器,時面存放示來纔會結束的一個事件(通常是個異步操作)結果。從語法上來說 promise 是個對象,從它可以獲取到異步操作的信息。
2、promise 對象代表一個異步操作,有三種狀態:Pendind((進行中)、Resolved(已完成)、Rejected(失敗)。只有異步操作的結果,才能決定當前是哪一種狀態。
3、promise 的英語意思是“承諾” ,表示其他手段無法修改。
4、promise 中狀態一旦改變,就會不再變。任何時候都可以得到這個結果。只會有兩種轉變,一種是 Pendind 轉爲 Resolved,另一種是 Pendind 轉爲 Rejected 。狀態改變後,給 promise 對象添加回調函數,也只得出剛纔的結果。
總結:promise 的操作就是半異步操作以同步操作的流程表達出來。避免了層層嵌套。
Promise 就是用同步的方式寫異步的代碼,用來解決回調問題
二、then ( ) 方法
then 的方法就是把原來的回調分離出來。異步執行完,用鏈式的方式執行回調。
Promise 的優勢就是用鏈式調用。我們可以在 then 方法中繼續寫 promise 的對象並返回,然後繼續調用 then 來進行回調操作。
在 promise 中可以有兩個參數(成功 resolve 調用的方法, 失敗 rejict 調用方法 )
1、新建 promise 的方法:
2、新建 promise 方法後執行回調:
3、demo 參照:
方法一:promise
方法二:JS
在 promise 中可以有兩個參數(成功 resolve 調用的方法, 失敗 rejict 調用方法 )
在 react 中 經常用的到一種寫法是: