大家好我有一個簡單的應用程序,我嘗試使用 vue 可視化插入排序算法,我設法編寫了一個函數,對項目列表進行排序并返回算法每個步驟的數組,這個數組的最后一個數組是完全排序的版本原始數組,所以我想要的是更新狀態并使用從函數返回的步驟數組的每個值設置原始未排序數組;這是我的插入排序功能const insertionSort = (unsortedItems) => {let sortedList = [...unsortedItems];let sortingProcess = [];for (let i = 1; i < sortedList.length; i++) { let current = sortedList[i]; let j = i - 1; while (j >= 0 && sortedList[j] > current) { sortedList[j + 1] = sortedList[j]; j--; sortingProcess.push(sortedList); } sortedList[j + 1] = current; sortingProcess.push(sortedList); } return sortingProcess; }; export default insertionSort;在這里我正在嘗試更新我的狀態insertionSort(this.unsortedList).forEach(round => setTimeout(() => (this.unsortedList = round), 600) );我希望上面的代碼每 600 毫秒更新一次我的狀態,但是當我單擊排序按鈕時,數組會立即排序,我看不到排序過程的每個步驟。那么我的代碼有什么問題?
Vue使用項目值數組更新狀態
泛舟湖上清波郎朗
2022-10-27 16:39:03