From b191c845a47a42cf1d75cd5d16d4867a80665b17 Mon Sep 17 00:00:00 2001 From: wangjiahao <1522128093@qq.com> Date: Tue, 21 Dec 2021 12:41:06 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E7=A7=BB=E5=8A=A8=E7=AB=AF?= =?UTF-8?q?=E5=B8=83=E5=B1=80=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/api/panel/enshrine.js | 12 ++-- .../canvas/components/Editor/Preview.vue | 1 + .../canvas/components/Editor/PreviewEject.vue | 4 +- frontend/src/views/panel/edit/index.vue | 60 ++++++++++++++++++- 4 files changed, 67 insertions(+), 10 deletions(-) diff --git a/frontend/src/api/panel/enshrine.js b/frontend/src/api/panel/enshrine.js index 4be99e1bdc..e8b98951ec 100644 --- a/frontend/src/api/panel/enshrine.js +++ b/frontend/src/api/panel/enshrine.js @@ -1,26 +1,26 @@ import request from '@/utils/request' -export function saveEnshrine(panelGroupId) { +export function saveEnshrine(panelGroupId, loading = true) { return request({ url: '/api/store/' + panelGroupId, method: 'post', - loading: true + loading: loading }) } -export function deleteEnshrine(id) { +export function deleteEnshrine(id, loading = true) { return request({ url: '/api/store/remove/' + id, method: 'post', - loading: true + loading: loading }) } -export function enshrineList(data) { +export function enshrineList(data, loading = true) { return request({ url: '/api/store/list', method: 'post', - loading: true, + loading: loading, data }) } diff --git a/frontend/src/components/canvas/components/Editor/Preview.vue b/frontend/src/components/canvas/components/Editor/Preview.vue index 4e71af110d..71000f4928 100644 --- a/frontend/src/components/canvas/components/Editor/Preview.vue +++ b/frontend/src/components/canvas/components/Editor/Preview.vue @@ -207,6 +207,7 @@ export default { console.log('navigator.userAgent:' + navigator.userAgent) const flag = navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i) this.terminal = flag ? 'mobile' : 'pc' + // this.terminal = 'mobile' }, canvasStyleDataInit() { // 数据刷新计时器 diff --git a/frontend/src/components/canvas/components/Editor/PreviewEject.vue b/frontend/src/components/canvas/components/Editor/PreviewEject.vue index 9af90493e8..ab25d00889 100644 --- a/frontend/src/components/canvas/components/Editor/PreviewEject.vue +++ b/frontend/src/components/canvas/components/Editor/PreviewEject.vue @@ -80,8 +80,8 @@ export default { .bg { width: 100%; height: 100vh!important; - min-width: 800px; - min-height: 600px; + min-width: 200px; + min-height: 300px; background-color: #f7f8fa; } diff --git a/frontend/src/views/panel/edit/index.vue b/frontend/src/views/panel/edit/index.vue index 5809f95db0..12b0219db1 100644 --- a/frontend/src/views/panel/edit/index.vue +++ b/frontend/src/views/panel/edit/index.vue @@ -122,12 +122,24 @@ @scroll="canvasScroll" > + + {{ panelInfo.name }} + - + + + + + + + + + + @@ -233,6 +245,7 @@ import generateID from '@/components/canvas/utils/generateID' import TextAttr from '@/components/canvas/components/TextAttr' import { queryPanelJumpInfo } from '@/api/panel/linkJump' import ComponentWait from '@/views/panel/edit/ComponentWait' +import { deleteEnshrine, saveEnshrine, starStatus } from '@/api/panel/enshrine' export default { name: 'PanelEdit', @@ -256,6 +269,8 @@ export default { }, data() { return { + mobileEditorShow: true, + hasStar: false, drawerSize: '300px', visible: false, show: false, @@ -453,6 +468,7 @@ export default { }, methods: { init(panelId) { + this.initHasStar() // 如果临时画布有数据 则使用临时画布数据(视图编辑的时候 会保存临时画布数据) const componentDataTemp = this.$store.state.panel.componentDataTemp const canvasStyleDataTemp = this.$store.state.panel.canvasStyleDataTemp @@ -512,6 +528,27 @@ export default { }) } }, + star() { + this.panelInfo && saveEnshrine(this.panelInfo.id, false).then(res => { + this.hasStar = true + }) + }, + unstar() { + this.panelInfo && deleteEnshrine(this.panelInfo.id, false).then(res => { + this.hasStar = false + }) + }, + initHasStar() { + starStatus(this.panelInfo.id, false).then(res => { + this.hasStar = res.data + }) + }, + mobileRefresh() { + this.mobileEditorShow = false + this.$nextTick(() => { + this.mobileEditorShow = true + }) + }, save() { }, @@ -964,11 +1001,30 @@ export default { background-size:100% 100% !important; } +.this_mobile_canvas_inner_top{ + vertical-align: middle; + text-align: center; + background-color: #f7f8fa; + height: 30px; + line-height: 30px; + font-size: 14px; + width: 100%; +} + .this_mobile_canvas_top{ height: 30px; width: 100%; } +.this_mobile_canvas_inner_bottom{ + background-color: #f7f8fa; + line-height: 30px; + vertical-align: middle; + color: gray; + height: 30px; + width: 100%; +} + .this_mobile_canvas_bottom{ height: 30px; width: 100%; @@ -977,7 +1033,7 @@ export default { .this_mobile_canvas_main{ overflow-x: hidden; overflow-y: auto; - height: calc(100% - 60px);; + height: calc(100% - 120px);; background-color: #d7d9e3; background-size:100% 100% !important; }