需要非同步地建立n個物件,並按照時間順序放入集合,原本是這麼寫的:
async.times(maxdays, createdatagrid, createblankgrids);
結果發現順序沒***,放入集合的順序是混亂的。主要對async太自信了,想當然認為times可以保證順序。最後發現呼叫錯了api,如果需要保證順序,應該呼叫timesseries方法:
async.timesseries(maxdays, createdatagrid, createblankgrids);
另外乙個問題,有個列表頁面,每一行需要展示的資料散落在多個表中。一開始的做法是先從乙個表中查出n條資料,然後迴圈取到id,到各個表中查剩餘的資料。這樣當列表的記錄數很多的時候,總的sql語句會非常多,因此列表展示得很慢
最後解決的方法是:
1、把能合併的sql語句合併
2、不能合併的語句,把字段放到主表中
其實第2個辦法也是利弊參半,違反了正規化,而且如果都這麼做,主表的冗餘欄位會變得太多。但是在我們這個場景下,這種方法可以解決問題。所以有時候也不能太教條,還是要根據實際情況靈活應對
最近遇到的兩個問題
最近做專案時,遇到兩個小問題,搜尋了一翻,還真不好找答案,最終還算解決了,於是有寫出來的衝動。希望能給遇到這類問題的同仁們有所幫助。一 如何設定componetart calendar 1 日期控制項的顯示語言 先說下我當時的遇到這個問題時的環境,由於開發是中文作業系統上進行的,所以在本地除錯時,沒...
最近遇到的問題
1.windows下使用anaconda安裝python包報錯 unicodedecodeerror ascii codec can t decode byte 0xcb in position 9 報錯unicodedecodeerror ascii codec can t decode byte...
最近遇到的問題
1 如果按鈕新增了背景,一定要設定背景顏色,以防載入錯誤時字型顏色不會和大背景顏色混為一體而讓使用者找不到按鈕。2 關於裝置端軟體公升級後,介面進行了整體改造。而使用者瀏覽器保留有以前的快取資訊,導致無法正確顯示公升級後的介面。這個問題當時網上搜了很多資料,不過大多都是針對js和css,在外鏈檔案時...