From 8ac19335f2d27523a53bd9706553ef18870c8a64 Mon Sep 17 00:00:00 2001 From: ZiuChen <457353192@qq.com> Date: Mon, 10 Oct 2022 18:47:42 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=A4=9A=E7=AB=AF?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E5=86=85=E5=AD=98=E6=95=B0=E6=8D=AE=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E5=A4=B1=E6=95=88=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/preload.js | 3 ++- src/global/initPlugin.js | 18 ++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/public/preload.js b/public/preload.js index 5d510f6..11f1464 100644 --- a/public/preload.js +++ b/public/preload.js @@ -1,4 +1,4 @@ -const { existsSync, readFileSync, writeFileSync, mkdirSync } = require('fs') +const { existsSync, readFileSync, writeFileSync, mkdirSync, watch } = require('fs') const crypto = require('crypto') const listener = require('./listener') const { clipboard } = require('electron') @@ -10,6 +10,7 @@ window.exports = { readFileSync, writeFileSync, mkdirSync, + watch, crypto, listener, clipboard, diff --git a/src/global/initPlugin.js b/src/global/initPlugin.js index de46d0d..54aec7b 100644 --- a/src/global/initPlugin.js +++ b/src/global/initPlugin.js @@ -4,6 +4,7 @@ const { readFileSync, writeFileSync, mkdirSync, + watch, crypto, listener, clipboard, @@ -53,6 +54,23 @@ export default function initPlugin() { this.dataBase = defaultDB this.updateDataBaseLocal(defaultDB) } + watchDataBaseUpdate() { + watch(this.path, (eventType, filename) => { + if (eventType === 'change') { + // 更新内存中的数据 + const data = readFileSync(this.path, { + encoding: 'utf8' + }) + try { + const dataBase = JSON.parse(data) + this.dataBase = dataBase + } catch (err) { + utools.showNotification('读取剪切板出错: ' + err) + return + } + } + }) + } updateDataBase() { // 更新内存数据 this.dataBase.updateTime = new Date().getTime()