From fa0ce01a107e6453d09d4cd972410a5f72b9588e Mon Sep 17 00:00:00 2001 From: purocean Date: Sat, 1 Jan 2022 22:13:27 +0800 Subject: [PATCH] upd: limit the number of recent open time --- src/renderer/support/store.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/renderer/support/store.ts b/src/renderer/support/store.ts index 6bf8c1df..c73f666a 100644 --- a/src/renderer/support/store.ts +++ b/src/renderer/support/store.ts @@ -1,4 +1,4 @@ -import { pick } from 'lodash-es' +import { orderBy, pick } from 'lodash-es' import { createStore } from 'vuex' import * as storage from '@fe/utils/storage' import type { Components, Doc, Repo } from '@fe/types' @@ -108,7 +108,15 @@ export default createStore({ storage.set('currentFile', pick(data, 'repo', 'path', 'type', 'name')) if (data) { - state.recentOpenTime = { ...(state.recentOpenTime || {}), [`${data.repo}|${data.path}`]: new Date().valueOf() } + const record: Record = { + ...(state.recentOpenTime || {}), + [`${data.repo}|${data.path}`]: Date.now() + } + + state.recentOpenTime = Object.fromEntries( + orderBy(Object.entries(record), x => x[1], 'desc').slice(0, 100) + ) + storage.set('recentOpenTime', state.recentOpenTime) } },