diff --git a/src/renderer/src/components/CodeEditor/a.d.ts b/src/renderer/src/components/CodeEditor/a.d.ts
deleted file mode 100644
index 5fa7024..0000000
--- a/src/renderer/src/components/CodeEditor/a.d.ts
+++ /dev/null
@@ -1 +0,0 @@
-type A = string
diff --git a/src/renderer/src/components/CodeEditor/code-editor.vue b/src/renderer/src/components/CodeEditor/code-editor.vue
index 69abc8a..6bee090 100644
--- a/src/renderer/src/components/CodeEditor/code-editor.vue
+++ b/src/renderer/src/components/CodeEditor/code-editor.vue
@@ -84,7 +84,7 @@
     },
   })
 
-  let isInnerChange = false
+  let isInnerChange = "first" // waitting, out, in
   function updateModel(name: string, content: string) {
     if (editor) {
       const oldModel = editor.getModel() //获取旧模型
@@ -94,7 +94,11 @@
       const model: monaco.editor.ITextModel = monaco.editor.createModel(content ?? "", file?.language ?? "txt")
       model.onDidChangeContent(() => {
         if (model) {
-          isInnerChange = true
+          if(isInnerChange === "out") {
+            isInnerChange = "waitting"
+            return
+          }
+          isInnerChange = "in"
           const code = model.getValue()
           emit("update:modelValue", code)
           emit("change", code)
@@ -148,10 +152,13 @@
     watch(
       () => props.modelValue,
       async str => {
-        if (editor && !isInnerChange) {
+        if(isInnerChange === "waitting") {
+          isInnerChange = "out"
+        }
+        if (editor && isInnerChange === "out") {
           editor.setValue(str)
         } else {
-          isInnerChange = false
+          isInnerChange = "waitting"
         }
       },
       { immediate: true },