diff --git a/src/config.ts b/src/config.ts index 560c33a..9c19e58 100644 --- a/src/config.ts +++ b/src/config.ts @@ -14,9 +14,12 @@ export const ossCdnBase = import.meta.env.PROD : 'https://oss.goosetab.com' // 后端地址 +// export const apiBase = import.meta.env.PROD +// ? 'https://goosetab.com/api' +// : 'http://192.168.110.28:8300' export const apiBase = import.meta.env.PROD ? 'https://goosetab.com/api' - : 'http://192.168.110.28:8300' + : 'https://goosetab.com/api' // eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiI2NzJkYjg5OGUxMjY5NDc1ODYwMmYwMTgifQ.8fpdr_HPgxyU0yr-8f6nGdbHYjsFRlBa2lvjc0Zhe-A // 图片后缀名 export const imgArr = [ diff --git a/src/layout/grid/BlockWrapper.tsx b/src/layout/grid/BlockWrapper.tsx index f307622..139d182 100644 --- a/src/layout/grid/BlockWrapper.tsx +++ b/src/layout/grid/BlockWrapper.tsx @@ -10,6 +10,7 @@ import useSettingsStore from '@/settings/useSettingsStore' import { useMenuStore } from '../GlobalMenu' import { block } from '@milkdown/kit/plugin/block' import clsx from 'clsx' +import dayjs from 'dayjs' export default defineComponent({ props: { @@ -28,6 +29,8 @@ export default defineComponent({ const menu = useMenuStore() let it: any = 0 const hover = ref(false) + const canPut = ref(false) + let enterTime: any = null; return () => (
{ + onDblclick={e => { e.stopPropagation() }} data-transportable={props.block.link && !props.block.link.startsWith('id:') ? '1' : ''} + onDragenter={() => { + enterTime = Date.now() + }} onDragover={(e) => { e.preventDefault() clearTimeout(it) hover.value = true + if (enterTime && (Date.now() - enterTime >= 300)) { + // 在这里执行你想要的操作,比如改变目标元素的样式或者触发其他函数 + canPut.value = true + }else { + canPut.value = false + + } it = setTimeout(() => { hover.value = false + canPut.value = false + }, 300) }} onDrop={() => { + canPut.value = false + if (enterTime && (Date.now() - enterTime < 300)) { + // 在这里执行你想要的操作,比如改变目标元素的样式或者触发其他函数 + return + + } + enterTime = null; + + // 处理移入 if (!dragging.id) return if (dragging.type === 'dock') { @@ -126,37 +150,42 @@ export default defineComponent({ layout.checkDir(dragging.type) resetDragging() } - }} + } + } > - {menu.isEditPage && ( -
{ - menu.isEditPage = false - }} - onClick={(e) => { - e.stopPropagation() - const idx = layout.state.content[layout.state.current].pages[ - layout.state.currentPage - ].list.findIndex((val) => val.id === props.block.id) + { + menu.isEditPage && ( +
{ + menu.isEditPage = false + }} + onClick={(e) => { + e.stopPropagation() + const idx = layout.state.content[layout.state.current].pages[ + layout.state.currentPage + ].list.findIndex((val) => val.id === props.block.id) - if (idx < 0) return + if (idx < 0) return - layout.state.content[layout.state.current].pages[ - layout.state.currentPage - ].list.splice(idx, 1) - }} - class={ - 'rounded-full cursor-pointer backdrop-blur-md absolute w-[20px] h-[20px] top-[8px] right-[12px] z-10 ' - } - style={{ - backgroundImage: `url('/tab/bg/del_icon_img.png')`, - backgroundSize: 'cover' - }} - >
- )} + layout.state.content[layout.state.current].pages[ + layout.state.currentPage + ].list.splice(idx, 1) + }} + class={ + 'rounded-full cursor-pointer backdrop-blur-md absolute w-[20px] h-[20px] top-[8px] right-[12px] z-10 ' + } + style={{ + backgroundImage: `url('/tab/bg/del_icon_img.png')`, + backgroundSize: 'cover' + }} + >
+ ) + } -
- {props.block.link ? ( - props.block.link.startsWith('id:') ? ( - // 文件夹 - + { + props.block.link ? ( + props.block.link.startsWith('id:') ? ( + // 文件夹 + + ) : ( + // 链接 + + ) ) : ( - // 链接 - + // 小组件 + ) - ) : ( - // 小组件 - - )} -
- {settings.state.showBlockLabel && ( -
- {layout.getLabel(props.block)} -
- )} -
+ } + + { + settings.state.showBlockLabel && ( +
+ {layout.getLabel(props.block)} +
+ ) + } + ) } }) diff --git a/src/user/useUserStore.ts b/src/user/useUserStore.ts index 7ba1e93..3ae6746 100644 --- a/src/user/useUserStore.ts +++ b/src/user/useUserStore.ts @@ -85,9 +85,24 @@ export default defineStore('user', () => { }, { immediate: true } ) + const comineData = () => { + if (!remoteAddList.value) return + remoteAddList.value.map((item) => { + if (item.link) + layout.state.content[layout.state.current].pages[layout.state.currentPage].list.push(item) + }) + } + const coverageData = () => { + if (!remoteData.value) return + Object.assign(layout.state.content, remoteData.value.content) + Object.assign(layout.state.dock, remoteData.value.dock) + Object.assign(layout.state.dir, remoteData.value.dir) + } + watch(() => profile.username, async (val, pre) => { + console.log(val); - watch(token, async (val) => { if (!val) return + console.log('开始比较'); const data = await request('GET', '/api/backup') if (!data) { @@ -113,27 +128,17 @@ export default defineStore('user', () => { // TODO: 交给张阳 // remoteAddList.value = addList remoteData.value = data + coverageData() - useRouterStore().go('global-backup') } + }, { + immediate: true }) const logout = () => { token.value = '' Object.assign(profile, { ...defaultUserInfo }) } - const comineData = () => { - if (!remoteAddList.value) return - remoteAddList.value.map((item) => { - if (item.link) - layout.state.content[layout.state.current].pages[layout.state.currentPage].list.push(item) - }) - } - const coverageData = () => { - if (!remoteData.value) return - Object.assign(layout.state.content, remoteData.value.content) - Object.assign(layout.state.dock, remoteData.value.dock) - Object.assign(layout.state.dir, remoteData.value.dir) - } + const updateProfile = () => { request('PUT', '/api/profile', { returnType: 'text',