微信小程式寫同步promise的最簡單方法

2021-10-02 15:34:03 字數 1263 閱讀 5672

在網上找了好久介紹,async-await,promise什麼的,弄不清楚具體怎麼寫,後來終於弄清楚了,按順序執行的promise模板格式其實很簡單!原理拋開,引用拋開,沒有var。如下:

//new promise模板

newpromise

((resolve, reject)

=>).

then

(res =>

)

模板之外不需要寫另外的引用了,複雜的需要注意放resolve的位置,resolve表示傳執行成功後的值a給then用。

例如雲資料庫資料一次只能查20個,需要迴圈查詢再用concat拼合陣列,但因為for非同步,查詢資料庫總是慢的不一致,就導致按順序查詢出來的在拼合時亂了順序,還需要全拼合完了再排序。因此需要用promise確保查詢完了,再resolve傳遞陣列去排序。

上例提取可執行的**片段展示太麻煩,就舉個特簡單的例子:

例如第一步是:

stepone:

function()

) console.

log(

'a1'

,this

.data.a)

},

第二步是:

steptwo:

function

(b)}

,

第二步需要第一步的a值,因為有先後順序的要求,可套進模板,如下:

new

promise

((resolve, reject)

=>).

then

(res =>

)

還不清楚上面**放哪,看完整的js(我這個新手就希望看到這麼簡單的o(╥﹏╥)o):

page(,

/** * 生命週期函式onload--監聽頁面載入

*/onload:

function

(options)).

then

(res =>)}

, stepone:

function()

) console.

log(

'a1'

,this

.data.a)},

steptwo:

function

(b)},}

)

微信小程式 同步請求

1 globaldata 全域性變數 全域性變數 globaldata index.js 獲取應用例項 使用全域性變數2 引用第三方庫 es6 promise var promise require plugins es6 promise.js function wxpromisify fn obj...

(微信小程式)一 初識微信小程式

需要看的 先是檔案目錄 一 pages 他存放於多個頁面 如 index log頁面。可以把他裡面的每個資料夾看成乙個整體。這個整體存放著 html css 和 資料 1 index資料夾 存放的index頁面的目錄。2 index.js 他可以處理得到 ajax 或自定義定義的資料。把得到的值封裝...

微信小程式的同步操作

小程式裡,大多數操作都是非同步操作,一些重要的操作,如從網上獲取重要變數值,必須要保證有值,後續操作才有意義。但非同步操作,又必須把處理放到 中,可讀性降低,而且和大多數正常邏輯相背。折騰了兩天,試了一些方法,記錄一下 1 最簡單,用while迴圈等待,發現基本上卡死 2 靈機一動,用showtoa...