diff --git a/src/comment/TopMenu.js b/src/comment/TopMenu.js
index 4d1c74b..6f7544f 100644
--- a/src/comment/TopMenu.js
+++ b/src/comment/TopMenu.js
@@ -22,7 +22,7 @@ exports.menuRebuild = (mainWindow) => {
: []),
// { role: 'fileMenu' }
{
- label: 'File',
+ label: '文件',
submenu: [
{
label: '打开目录',
diff --git a/src/components/ItemTree/index.jsx b/src/components/ItemTree/index.jsx
index 7c97dd4..902e1f0 100644
--- a/src/components/ItemTree/index.jsx
+++ b/src/components/ItemTree/index.jsx
@@ -64,7 +64,10 @@ const ItemTree = () => {
useEffect(() => {
store.subscribe(() => {
let fileDirDate = store.getState().dirMessage.data;
- console.log("打开目录fileDirDate:", fileDirDate)
+ if (fileDirDate.length===0){
+ return
+ }
+ console.log("打开目录1fileDirDate:", fileDirDate)
for (let i = 0; i < fileDirDate.length; i++) {
const node = fileDirDate[i];
console.log("node:", node)
diff --git a/src/pages/Note/Hlexical/index.jsx b/src/pages/Note/Hlexical/index.jsx
index 2079e01..7829965 100644
--- a/src/pages/Note/Hlexical/index.jsx
+++ b/src/pages/Note/Hlexical/index.jsx
@@ -28,9 +28,10 @@ import {CLEAR_HISTORY_COMMAND} from "lexical";
import ActionPlugin from "../../../components/ActionPlug"
import {func} from "prop-types";
import store from "../../../redux/store";
-import {useSelector} from 'react-redux'
+
import {SAVE} from "../../../utils/HotkeyConst";
import md5 from "md5"
+import {isEmpty} from "../../../utils/ObjectUtils";
function Placeholder() {
return
Enter some rich text...
;
@@ -85,15 +86,22 @@ function ImportFilePlugin(props) {
}
function SaveFilePlugin(props) {
- const [editor] = useLexicalComposerContext();
useEffect(() => {
store.subscribe(() => {
+ console.log("触发保存")
let data = store.getState().pushHotkeys.data;
- const editorState = {"editorState":editor.getEditorState()};
+ console.log("props.editorState",props.editorState)
+ if (isEmpty(props.editorState)){
+ return
+ }
+ const editorState = {"editorState":JSON.parse(props.editorState)};
let resultSave = JSON.stringify(editorState);
+ console.log("data === SAVE",data,SAVE,data === SAVE)
if (data === SAVE) {
importFile(props.filePath).then(value => {
- if (md5(resultSave)!==md5(JSON.stringify(JSON.parse(value.toString())))){
+ let save = md5(resultSave)!==md5(JSON.stringify(JSON.parse(value.toString())));
+ console.log("md5(resultSave)!==md5(JSON.stringify(JSON.parse(value.toString())))",resultSave,save)
+ if (save){
console.log("保存重写")
overWriteFile(props.filePath, resultSave)
}
@@ -103,7 +111,7 @@ function SaveFilePlugin(props) {
}
})
- }, editor)
+ }, props)
}
// 从字符串化 JSON 设置编辑器状态
@@ -122,6 +130,32 @@ export default function Hlexical(props) {
setEditorState(JSON.stringify(editorStateJSON));
}
+ store.subscribe(() => {
+ console.log("触发保存")
+ let data = store.getState().pushHotkeys.data;
+ console.log("props.editorState",editorState)
+ if (isEmpty(editorState)){
+ return
+ }
+ const editorStateSave = {"editorState":JSON.parse(editorState)};
+ console.log("editorStateSave",editorStateSave)
+ let resultSave = JSON.stringify(editorStateSave);
+ console.log("data === SAVE",resultSave,data === SAVE)
+ if (data === SAVE) {
+ importFile(props.filePath).then(value => {
+ let save = md5(resultSave)!==md5(JSON.stringify(JSON.parse(value.toString())));
+ console.log("md5(resultSave)!==md5(JSON.stringify(JSON.parse(value.toString())))",resultSave,save)
+ if (save){
+ console.log("保存重写")
+ overWriteFile(props.filePath, resultSave)
+ }
+ }).catch(error =>
+ console.error(error)
+ )
+
+ }
+ })
+
return (
@@ -145,7 +179,7 @@ export default function Hlexical(props) {
-
+ {/**/}
{/**/}