From db2aa35b2f68998d710365a64cd7bca17383e355 Mon Sep 17 00:00:00 2001 From: zhengkunwang223 <31820853+zhengkunwang223@users.noreply.github.com> Date: Wed, 26 Apr 2023 20:30:14 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=A7=A3=E5=86=B3=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E5=A4=8D=E5=88=B6=E5=88=B0=E5=8E=9F=E8=B7=AF=E5=BE=84=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E6=96=87=E4=BB=B6=E5=86=85=E5=AE=B9=E6=B8=85=E7=A9=BA?= =?UTF-8?q?=E7=9A=84=20BUG=20(#798)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/utils/files/file_op.go | 16 ++++++++++------ .../host/file-management/code-editor/index.vue | 8 ++++---- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/backend/utils/files/file_op.go b/backend/utils/files/file_op.go index 9b85138a4..d93c15dcc 100644 --- a/backend/utils/files/file_op.go +++ b/backend/utils/files/file_op.go @@ -322,17 +322,21 @@ func (f FileOp) CopyFile(src, dst string) error { } defer srcFile.Close() + srcInfo, err := f.Fs.Stat(src) + if err != nil { + return err + } + dstPath := path.Join(dst, srcInfo.Name()) + if src == dstPath { + return nil + } + err = f.Fs.MkdirAll(filepath.Dir(dst), 0666) if err != nil { return err } - srcInfo, err := f.Fs.Stat(src) - if err != nil { - return err - } - - dstFile, err := f.Fs.OpenFile(path.Join(dst, srcInfo.Name()), os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0775) + dstFile, err := f.Fs.OpenFile(dstPath, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0775) if err != nil { return err } diff --git a/frontend/src/views/host/file-management/code-editor/index.vue b/frontend/src/views/host/file-management/code-editor/index.vue index 7e9767e52..03b96c91d 100644 --- a/frontend/src/views/host/file-management/code-editor/index.vue +++ b/frontend/src/views/host/file-management/code-editor/index.vue @@ -82,10 +82,10 @@ interface EditorConfig { eol: number; } -let open = ref(false); -let loading = ref(false); +const open = ref(false); +const loading = ref(false); -let config = reactive({ +const config = reactive({ theme: 'vs-dark', language: 'plaintext', eol: monaco.editor.EndOfLineSequence.LF, @@ -129,7 +129,7 @@ const handleClose = () => { if (editor) { editor.dispose(); } - em('close', false); + em('close', open.value); }; const changeLanguage = () => { monaco.editor.setModelLanguage(editor.getModel(), config.language);