鍍金池/ 問答/HTML/ 在vue的組件中, 能獲取到數(shù)組, 但是取不到長度

在vue的組件中, 能獲取到數(shù)組, 但是取不到長度

問題是這樣的:想實現(xiàn)的功能是上傳相冊時,獲取用戶上傳的照片數(shù)組,只顯示前5張為大圖,其余都顯示小圖,效果如下圖:
圖片描述

獲取數(shù)組的代碼如下圖:
圖片描述

第一次上傳兩張圖之后,打印臺數(shù)據(jù)如下:
圖片描述

第二次上傳4張圖之后,打印臺數(shù)據(jù)如下:
圖片描述

打印的是上一輪選擇的圖片長度,第三次再上傳時,打印的就是上兩次一共的圖片長度。按理來說,第一次應(yīng)該打印的長度值就是2。
所以使用splice就不能正常截取數(shù)組長度了,求大神幫忙解答下這個問題。。。

回答
編輯回答
替身

render.load是異步執(zhí)行的,打印的時候可能還沒有加載完成

2017年5月31日 11:40
編輯回答
初心

我覺得問題點在 你向imgUrlList push的時候是在reader.onload事件里,這就導(dǎo)致你的代碼不是順序執(zhí)行輸出了,你把賦值寫在事件里了

2018年2月22日 11:51
編輯回答
傻丟丟

讀取文件需要時間,直接打印的是尚未讀取的狀態(tài),當(dāng)你點開控制臺里的數(shù)據(jù)的時候又已經(jīng)讀取完畢了,所以顯示錯誤,你給console.log加個延時看看對不對。

2017年8月16日 03:28