|
@@ -47,6 +47,7 @@ export default {
|
|
|
havItem: false, //右击是否选中item
|
|
|
showTooltip: false, //是否显示tooltip
|
|
|
topoContent: {}, // 读图后存储图所有数据
|
|
|
+ autoSave: null, // 自动保存定时器
|
|
|
};
|
|
|
},
|
|
|
computed: {
|
|
@@ -80,6 +81,10 @@ export default {
|
|
|
};
|
|
|
// 读取底图
|
|
|
this.readtopoMsg();
|
|
|
+ // 2分钟自动保存
|
|
|
+ this.autoSave = setInterval(() => {
|
|
|
+ this.autoSaveTopo();
|
|
|
+ }, 120000);
|
|
|
},
|
|
|
methods: {
|
|
|
...mapMutations([
|
|
@@ -227,7 +232,7 @@ export default {
|
|
|
});
|
|
|
this.view.fitSceneToView();
|
|
|
},
|
|
|
- // 保存草稿
|
|
|
+ // 生成快照并保存草稿
|
|
|
saveTopoDraft() {
|
|
|
const uuid = uuidv1();
|
|
|
return Promise.all([this.generateSnap(uuid), this.saveDraft(uuid)]).then(
|
|
@@ -327,6 +332,15 @@ export default {
|
|
|
});
|
|
|
});
|
|
|
},
|
|
|
+ // 自动保存
|
|
|
+ autoSaveTopo() {
|
|
|
+ console.log(this.scene.undoStack.isChange);
|
|
|
+ if (this.scene && this.scene.undoStack.isChange) {
|
|
|
+ this.saveTopoDraft().then(() => {
|
|
|
+ this.scene.undoStack.isChange = false;
|
|
|
+ });
|
|
|
+ }
|
|
|
+ },
|
|
|
// 发布草稿
|
|
|
issueDraft() {
|
|
|
const pa = {
|
|
@@ -395,6 +409,9 @@ export default {
|
|
|
this.SETISPUB(this.$route.query.isPub);
|
|
|
this.categoryName = decodeURI(this.$route.query.categoryName);
|
|
|
},
|
|
|
+ beforeDestroy() {
|
|
|
+ clearInterval(this.autoSave);
|
|
|
+ },
|
|
|
};
|
|
|
</script>
|
|
|
<style lang="less" scoped>
|