diff --git a/src/assets/js/bus.js b/src/assets/js/bus.js
index 00d8985..a529af3 100755
--- a/src/assets/js/bus.js
+++ b/src/assets/js/bus.js
@@ -1,3 +1,18 @@
// import Vue from 'vue';
-export default new Vue();
+export const EventBus = new Vue();
+
+export default {
+ on(event, callback) {
+ EventBus.$on(event, callback);
+ },
+ off(event, callback) {
+ EventBus.$off(event, callback);
+ },
+ emit(event, ...args) {
+ EventBus.$emit(event, ...args);
+ },
+ notify(any) {
+ EventBus.$notify(any)
+ }
+};
diff --git a/src/components/FancyTree/index.vue b/src/components/FancyTree/index.vue
index a294b3e..ed58c37 100644
--- a/src/components/FancyTree/index.vue
+++ b/src/components/FancyTree/index.vue
@@ -39,7 +39,7 @@
import 'jquery.fancytree/dist/skin-win8/ui.fancytree.less';
import 'jquery.fancytree/dist/modules/jquery.fancytree.edit';
import fancytree from 'jquery.fancytree';
- import Bus from '@/assets/js/bus'
+ import store from '@/store'
import api from '@/api/file-api'
export default {
@@ -431,20 +431,22 @@
username: this.$store.state.user.name,
path: encodeURI(node.data.path)
}).then(res => {
- if (res.data) {
- row.oldName = node.data.name
- row.name = newFileName
- row.suffix = newFileName.replace(/.+\./,"")
- Bus.$emit('renameRow',row)
- row.oldPath = row.path
- row.path = row.path.substring(0,row.path.length - row.oldName.length) + newFileName
- node.setTitle(newFileName)
- this.addRef(node)
- this.$message.success("修改成功!")
- this.$emit('onRename', row)
- if(this.editableTabsValue === row.oldPath){
- this.$emit('update:editableTabsValue', row.path)
- }
+ row.oldName = node.data.name
+ row.name = newFileName
+ row.suffix = newFileName.replace(/.+\./,"")
+ console.log('renameRow',row)
+ store.dispatch('updateMessage', {
+ event: 'renameRow',
+ data: row
+ })
+ row.oldPath = row.path
+ row.path = row.path.substring(0,row.path.length - row.oldName.length) + newFileName
+ node.setTitle(newFileName)
+ this.addRef(node)
+ this.$message.success("修改成功!")
+ this.$emit('onRename', row)
+ if(this.editableTabsValue === row.oldPath){
+ this.$emit('update:editableTabsValue', row.path)
}
})
},
diff --git a/src/components/Minder/minder.vue b/src/components/Minder/minder.vue
index c21ced8..51e163a 100644
--- a/src/components/Minder/minder.vue
+++ b/src/components/Minder/minder.vue
@@ -110,9 +110,9 @@ import 'vue-kityminder-ggg/examples/styles/minder.css';
import JSPDF from 'jspdf';
import api from "@/api/file-api";
import txtApi from "@/api/markdown-api";
-import Bus from "@/assets/js/bus";
import historyApi from "@/api/file-history";
import HistoryPopover from "@/components/HistoryPopover/index.vue";
+import {mapState} from "vuex";
export default {
@@ -139,6 +139,7 @@ export default {
},
},
computed: {
+ ...mapState(['message']),
hasReadOnly() {
return this.readOnly || this.viewHistory
},
@@ -207,14 +208,17 @@ export default {
},
zoom(val) {
this.execCommand('Zoom', val)
+ },
+ message(msg) {
+ if (msg.event === 'previewSaveAndClose') {
+ this.saveAndClose()
+ }
}
},
mounted() {
- Bus.$on('previewSaveAndClose', this.saveAndClose)
document.addEventListener('keydown', this.ctrlAndS)
},
destroyed() {
- Bus.$off('previewSaveAndClose')
document.removeEventListener('keydown', this.ctrlAndS)
},
methods: {
diff --git a/src/components/ShowFile/ShowFile.vue b/src/components/ShowFile/ShowFile.vue
index 61a9182..60e60f5 100644
--- a/src/components/ShowFile/ShowFile.vue
+++ b/src/components/ShowFile/ShowFile.vue
@@ -847,7 +847,7 @@
diff --git a/src/components/preview/ImageViewer.vue b/src/components/preview/ImageViewer.vue
index a8b5254..b414578 100644
--- a/src/components/preview/ImageViewer.vue
+++ b/src/components/preview/ImageViewer.vue
@@ -18,7 +18,7 @@