From f86c26b8233198b20fb6188565f2c931e5ab7afc Mon Sep 17 00:00:00 2001 From: expdsn <18111002318@163.com> Date: Thu, 17 Oct 2024 18:33:05 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E4=BB=8A=E5=A4=A9=E5=90=83?= =?UTF-8?q?=E4=BB=80=E4=B9=88=E5=B0=8F=E7=BB=84=E4=BB=B6=E7=9A=84=E5=BC=80?= =?UTF-8?q?=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- public/bg/eat_bg@2x.webp | Bin 0 -> 13612 bytes public/bg/eat_top_bg.webp | Bin 0 -> 3702 bytes src/widgets/eat/Middle.tsx | 143 ++++++++++++++++++++++ src/widgets/eat/Modal.tsx | 12 ++ src/widgets/eat/index.ts | 20 ++++ src/widgets/index.ts | 3 +- src/widgets/video/Large.tsx | 171 +-------------------------- src/widgets/video/Middle.tsx | 10 ++ src/widgets/video/Modal.tsx | 12 ++ src/widgets/video/Small.tsx | 14 +++ src/widgets/video/index.ts | 22 +++- src/widgets/video/useWeApplyStore.ts | 29 ----- 12 files changed, 234 insertions(+), 202 deletions(-) create mode 100644 public/bg/eat_bg@2x.webp create mode 100644 public/bg/eat_top_bg.webp create mode 100644 src/widgets/eat/Middle.tsx create mode 100644 src/widgets/eat/Modal.tsx create mode 100644 src/widgets/eat/index.ts create mode 100644 src/widgets/video/Middle.tsx create mode 100644 src/widgets/video/Modal.tsx create mode 100644 src/widgets/video/Small.tsx delete mode 100644 src/widgets/video/useWeApplyStore.ts diff --git a/public/bg/eat_bg@2x.webp b/public/bg/eat_bg@2x.webp new file mode 100644 index 0000000000000000000000000000000000000000..3b087461110327c789f131d2ab7e0372a3df506c GIT binary patch literal 13612 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 RduIXG1Kw}doVrEye*nS1L^}Wg literal 0 HcmV?d00001 diff --git a/public/bg/eat_top_bg.webp b/public/bg/eat_top_bg.webp new file mode 100644 index 0000000000000000000000000000000000000000..c6d1905290e859485e570dfc367ef69b339a98c6 GIT binary patch literal 3702 zcmchZc|2QL8^^CMbXwbV(N2qW@s5^K(*+f(8(OKQ)}m+-skVqEp@J}-GDa0+%Al#D zs`oco+5H`nI8si~hl z063bQwsx@AzqAnm03EPEqyPv2oIi8Mx>X8n0#dD#dL20A>lYkoV|IG?B`4?IGVcH> zFs%Uh3_`7{zpX(pe$T2eRqJm({<-rDFGP?h=rRo!wLtLUU`$&fp#`$KH-at#9B|)+}S%jaxEoe7@MHvVJ zYydOhv}FBY8^k{c0QBboU~SUJK96(&AlwFk9rTZVY7YTG;X44R?)cdEaZgb2K={gZ z>%e-Aw>JRHNkKcc)}NOvH)-h(jcRVV;!yb?XD4tw|j$F?;o+Q`!ICan5#88!X_2~T$wqkT7^sqny~HC@U>xfWLd`AS<$75QQu2p8{jd+Ztu_L-w&KU1{K9f|O3B zbZ0Yg)f1@v1~5MWL~U3Xz2VC!#pvCNd)6pEGX}cGEA3ev4rgY-^*oFk=%cV%?M1`4 zCY1Nq`Y&Q_zv2|*pvHdj$KfJ7%qj&MJ0h47ubu8Eb51N8KP$g(%^jaBtW&MX**#3jf zljH4ee-N<5PhhLouy?LbB~LWdGy07;0CKBFMnTo^=gcCxSa}tL_klH+V_jnvi1I{m z>&PF#=6@TaZ>$2hB~6ZDP+LN*>n0Q806K6PL z7k_WqOJUgqrGRR5^*QL%*Q z#g}QkP(#(k`~h1x&H;f$wv3b!dUx@W!sXy)m!~rl0%2ER=CER+hK7drL5<$?Ns-di zBbg;yZWN(rk89SE`0k<_Y@eL#%nU!oD743 zv6`D>!YZq*>OFj>ulU4mvvUYLmX{iC=iuOBkG4QtSXj9F;v*d#-5t3lf*u;k^(gSi zO*g1)VCHIxdQT|@aMyHocX#)IbamO$>>S|;#0Sea=oW1)BHgH@Ce*r~PjhWN!_Lhq zFWh+j+O=zF)#q}|nC9lkAS~A7R2D0hmAZm=JRB*bs|2+Qs;KMeNs1USNVP~vu#iiT zlapgE)P~`Achz0uB52CfX_+c_^9wbKG&D6eiwX#QT3oVGGMB%D$J4^(fzi%ATO_J z`-bmM520Mlut+5Gk>=ZNai+PS>poDf9;I(f2u6>2RS{wuvrl%idEn;h>W4QMom z=m{Y^I~$IS>@O&a4bV~CNT^0vhM-OMUd-WeMvRQ=>goo_Z$1wOKh+tv5Q%X)$>$uA zSnPF|{aa<{BeX~?7OVMj(OBn};oJ^AC$>#i2V}##Ti|}Wm?4pBbOwV;B}YVv*REY_ zUT`Y!CmZtv|4@~O%E)Mq9voqAYmHutULu{~OpT3k?wT4vp>+C7I5~Wj=S2JYF?(=U zxOk%8SWz}+7Sj(k*hd+Cx3GP}J-lqGY2j0}$+*@eJmVJS>Z6L>x{_nc8`s~GBL6sq znmU3)TcFly&cRTXI3IknAkyf_|v3ww*`=zZf-73|H;acB1?OZv}Z zFj>1)C<+UrFl=x#=LMy8Qz9C|J;9{*lLu(V4`X6X&01Ql!o}#B39rNH7rw5yBn zO}Dm=_Rha*v-P)#$S}{dDd^HG@F$&*NRenejeDyG;a^VZbE&8jQ489r>Q;9W6XX+R z73Ae*WoH!@XPjH8*RG;MLqmhTZiElNY9lZ+GSbE2L4V;H@ zqvJOhy4vF6%91HVLqiRF<|-Ql$b+V);GQ(2#ncpAYEaOoYN~=8 zj>}>m7xC$@U%wrGxi~O6`NoP{DIA)rrYR{YrKLJL(Aw|cWHSWy^;X<^QG5E4>qVMm zSp23MjIiG|>13R?3@N?~|<_dHs_~%vbT&?XS*YASG b-jM6-)0!Dmhv4S(A*A_vF|E(5Q407Sg3*%a literal 0 HcmV?d00001 diff --git a/src/widgets/eat/Middle.tsx b/src/widgets/eat/Middle.tsx new file mode 100644 index 0000000..71ff2ce --- /dev/null +++ b/src/widgets/eat/Middle.tsx @@ -0,0 +1,143 @@ +import clsx from 'clsx' +import dayjs from 'dayjs' +import { defineComponent, ref } from 'vue' + +export default defineComponent(() => { + const list = [ + '猪脚饭', + '汉堡薯条', + '麻辣烫', + '烧腊饭', + '黄焖鸡米饭', + '煲仔饭 ', + '酸辣粉', + '肠粉', + '沙县小吃', + '热干面', + '重庆小面 ', + '兰州拉面', + '凉皮', + '生煎', + '锅贴', + '炒饭', + '冒菜', + '鸭血粉丝汤', + '胡辣汤', + '砂锅粥', + '螺蛳粉', + '水饺', + '茶餐厅', + '馄饨抄手', + '披萨', + '桂林米粉', + '川菜', + '湘菜', + '粤菜', + '日本料理', + '韩国料理', + '焗饭', + '泡面', + '麻辣香锅', + '沙拉轻食', + '馄饨', + '拉面', + '烩面', + '热干面', + '刀削面', + '油泼面', + '炸酱面', + '炒面', + '米线', + '酸辣粉', + '土豆粉', + '螺狮粉', + '凉皮儿', + '麻辣烫', + '肉夹馍', + '羊肉汤', + '炒饭', + '盖浇饭', + '卤肉饭', + '烤肉饭', + '黄焖鸡米饭', + '驴肉火烧', + '川菜', + '麻辣香锅', + '火锅', + '酸菜鱼', + '烤串', + '披萨', + '烤鸭', + '汉堡', + '炸鸡', + '寿司', + '蟹黄包', + '煎饼果子', + '生煎', + '炒年糕' + ] + const text = ref('') + return () => ( +
{ + text.value = '' + }} + > +
+ eat_bg +
+
+
+ + + {text.value} + +
+ {!text.value && ( + <> + 今天吃什么 + {dayjs().format('MM.DD')} + {dayjs().format('ddd')} + + )} +
+
+ ) +}) diff --git a/src/widgets/eat/Modal.tsx b/src/widgets/eat/Modal.tsx new file mode 100644 index 0000000..9890740 --- /dev/null +++ b/src/widgets/eat/Modal.tsx @@ -0,0 +1,12 @@ +import { defineComponent } from 'vue' + +export default defineComponent(() => { + return () => ( +
+ ) +}) diff --git a/src/widgets/eat/index.ts b/src/widgets/eat/index.ts new file mode 100644 index 0000000..c8ca18d --- /dev/null +++ b/src/widgets/eat/index.ts @@ -0,0 +1,20 @@ +import asyncLoader from '@/utils/asyncLoader' +import type { Widget } from '..' + +export default { + name: 'todayEat', + label: '今天吃什么', + description: '今天吃什么呢?', + icon: '/icons/today_eat.png', + modal: null, + list: [ + + { + w: 2, + h: 2, + label: '中', + component: asyncLoader(() => import('./Middle')) + }, + + ] +} as Widget diff --git a/src/widgets/index.ts b/src/widgets/index.ts index 5b8c45c..7a008ca 100644 --- a/src/widgets/index.ts +++ b/src/widgets/index.ts @@ -3,6 +3,7 @@ import calendar from './calendar' import weather from './weather' import weApply from './weApply' import gameNews from './gameNews' +import eat from './eat' export interface Widget { name: string // 小组件类型唯一标识 label: string // 小组件名称 @@ -17,4 +18,4 @@ export interface Widget { }[] // 不同尺寸小组件块 } -export default [calendar, weather, weApply, gameNews] as Widget[] +export default [calendar, weather, weApply, gameNews, eat] as Widget[] diff --git a/src/widgets/video/Large.tsx b/src/widgets/video/Large.tsx index 118526b..b83de91 100644 --- a/src/widgets/video/Large.tsx +++ b/src/widgets/video/Large.tsx @@ -1,172 +1,9 @@ -import { defineComponent, ref, watch, type VNodeRef } from 'vue' -import { useWeApplyStore } from './useWeApplyStore' -import { addIcons, OhVueIcon } from 'oh-vue-icons' -import { HiChevronDown } from 'oh-vue-icons/icons' -import clsx from 'clsx' -addIcons(HiChevronDown) +import { defineComponent } from 'vue' + export default defineComponent(() => { - const store = useWeApplyStore() - const gameRef = ref(null) - const isGameBottom = ref(false) - const isWorkBottom = ref(false) - const workRef = ref(null) - const computIsBottom = (ref: any) => { - if (ref) { - const { scrollTop, clientHeight, scrollHeight } = ref - return scrollTop + clientHeight >= scrollHeight - } - } - const handleGameScroll = () => { - const isAtBottom = computIsBottom(gameRef.value) - console.log(isAtBottom ? '已滚动到底部!' : '未滚动到底部。') - if (isAtBottom) { - isGameBottom.value = true - } else { - isGameBottom.value = false - } - } - const handleWorkScroll = () => { - const isAtBottom = computIsBottom(workRef.value) - console.log(isAtBottom ? '已滚动到底部!' : '未滚动到底部。') - if (isAtBottom) { - isWorkBottom.value = true - } else { - isWorkBottom.value = false - } - } - watch(gameRef, (val, _, onCleanup) => { - console.log(val) - if (!val) return - val.addEventListener('scroll', handleGameScroll) - // if (val + gameRef.value.clientHeight >= gameRef.value.scrollHeight) { - // isGameBottom.value = true - // } else { - // isGameBottom.value = false - // } - onCleanup(() => { - val.removeEventListener('scroll', handleGameScroll) - }) - }) - watch(workRef, (val, _, onCleanup) => { - console.log(val) - if (!val) return - - val.addEventListener('scroll', handleWorkScroll) - // if (val + gameRef.value.clientHeight >= gameRef.value.scrollHeight) { - // isGameBottom.value = true - // } else { - // isGameBottom.value = false - // } - onCleanup(() => { - val.removeEventListener('scroll', handleWorkScroll) - }) - }) return () => ( -
-
- {!isGameBottom.value && ( -
{ - e.stopPropagation() - e.preventDefault() - if (gameRef.value) { - gameRef.value.scrollTop += 40 - } - }} - > - -
- )} - -
{ - console.log('wheel') - }} - > - {store.state.list - .filter((val) => val.type === 'game') - .map((item) => ( -
- game icon -
- {item.name} - - {item.des} - -
-
- ))} -
-
-
- {!isWorkBottom.value && ( -
{ - e.stopPropagation() - e.preventDefault() - if (workRef.value) { - workRef.value.scrollTop += 20 - } - }} - > - -
- )} - -
{ - console.log('wheel') - handleWorkScroll() - }} - > - {store.state.list - .filter((val) => val.type === 'work') - .map((item) => ( -
- game icon -
- {item.name} - - {item.des} - -
-
- ))} -
-
+
+ large
) }) diff --git a/src/widgets/video/Middle.tsx b/src/widgets/video/Middle.tsx new file mode 100644 index 0000000..53edc23 --- /dev/null +++ b/src/widgets/video/Middle.tsx @@ -0,0 +1,10 @@ +import { defineComponent } from 'vue' + +export default defineComponent(() => { + + return () => ( +
+ middle +
+ ) +}) diff --git a/src/widgets/video/Modal.tsx b/src/widgets/video/Modal.tsx new file mode 100644 index 0000000..9890740 --- /dev/null +++ b/src/widgets/video/Modal.tsx @@ -0,0 +1,12 @@ +import { defineComponent } from 'vue' + +export default defineComponent(() => { + return () => ( +
+ ) +}) diff --git a/src/widgets/video/Small.tsx b/src/widgets/video/Small.tsx new file mode 100644 index 0000000..bf0a763 --- /dev/null +++ b/src/widgets/video/Small.tsx @@ -0,0 +1,14 @@ +import { defineComponent } from 'vue' + +export default defineComponent(() => { + return () => ( +
+ +
+ ) +}) diff --git a/src/widgets/video/index.ts b/src/widgets/video/index.ts index 372edf2..46a5db7 100644 --- a/src/widgets/video/index.ts +++ b/src/widgets/video/index.ts @@ -2,12 +2,24 @@ import asyncLoader from '@/utils/asyncLoader' import type { Widget } from '..' export default { - name: 'video', - label: '视频', - description: '热门视频', - icon: '/icons/recommendedIcon.png', - modal: null, + name: 'gameNews', + label: '游戏资讯', + description: '游戏资讯', + icon: '/icons/game_news_icon.png', + modal: asyncLoader(() => import('./Modal')), list: [ + { + w: 2, + h: 1, + label: '小', + component: asyncLoader(() => import('./Small')) + }, + { + w: 2, + h: 2, + label: '中', + component: asyncLoader(() => import('./Middle')) + }, { w: 4, h: 2, diff --git a/src/widgets/video/useWeApplyStore.ts b/src/widgets/video/useWeApplyStore.ts deleted file mode 100644 index 805c66b..0000000 --- a/src/widgets/video/useWeApplyStore.ts +++ /dev/null @@ -1,29 +0,0 @@ -import request from "@/utils/request" -import { defineStore } from "pinia" -import { reactive } from "vue" -type WeApplyType = { - id: string; - name: string; - url: string; - icon: string; - des: string; - type: string; -} -export const useWeApplyStore = defineStore('weApply', () => { - const state = reactive({ - list: [] as WeApplyType[] - }) - const getWeApplyList = async () => { - return request('GET', '/api/app/weApplys').then(res => { - return res - }) - } - const getList = async () => { - state.list = await getWeApplyList() - } - getList() - return { - state, - getList - } -}) \ No newline at end of file