网站制作详细流程天津滨海新区落户政策

张小明 2025/12/31 10:55:22
网站制作详细流程,天津滨海新区落户政策,电影资源分享网站怎么做的,wordpress xss漏洞一、功能概述 如果说周视图帮助用户了解短期变化趋势#xff0c;那么月视图则更适合观察长期习惯。本篇文章围绕“月视图统计”页面#xff0c;介绍如何在 Cordova Web 层 以日为单位聚合整个月的喝水数据#xff0c;并通过 OpenHarmony ArkTS 提供原生侧的月度概览展示那么月视图则更适合观察长期习惯。本篇文章围绕“月视图统计”页面介绍如何在Cordova Web 层以日为单位聚合整个月的喝水数据并通过OpenHarmony ArkTS提供原生侧的月度概览展示为后续实现更精细的趋势分析打下基础。文章仍然采用一段代码一段说明的节奏并附带 ArkTS 示例代码。二、Web 端月视图页面结构dividmonth-view-pageclasspage page-month-viewh1本月喝水统计/h1tableclassdata-tableidtable-month-viewtheadtrth日期/thth饮水量 (ml)/th/tr/theadtbodyidtable-month-view-body/tbody/table/div这段 HTML 定义了月视图统计页面的基础结构。与周视图类似表格的每一行展示某一天的总饮水量。标题明确标注“本月喝水统计”让用户清楚当前查看的是哪个时间范围的数据。tbody使用table-month-view-body作为占位符在 JavaScript 中动态插入行数据。由于一个月可能有 2831 天表格行数会随之变化。.page-month-view{padding:16px 24px;}#table-month-view td:nth-child(2){text-align:right;}CSS 部分延续了之前的风格为页面增加统一的内边距并将第二列饮水量列右对齐。注意到无论是周视图还是月视图布局风格都保持一致这有助于用户在不同统计页面之间切换时保持认知连贯性。三、计算当月日期并聚合统计functiongetCurrentMonthDays(){consttodaynewDate();constyeartoday.getFullYear();constmonthtoday.getMonth();constdays[];constfirstDaynewDate(year,month,1);letcurrentnewDate(firstDay);while(current.getMonth()month){days.push(newDate(current));current.setDate(current.getDate()1);}returndays;}getCurrentMonthDays函数用于生成当前月份中每一天的日期对象列表。从每月第一天开始逐日递增直到月份发生变化为止。这种写法确保了无论当月是 28、29、30 还是 31 天都能准确生成所有日期。与周视图类似即便某些天没有喝水记录也可以在界面上显示 0 ml从而帮助用户识别自己在整个月度中的习惯空白。asyncfunctionloadMonthView(){constdaysgetCurrentMonthDays();consttbodydocument.getElementById(table-month-view-body);if(!tbody)return;tbody.innerHTML;conststatsForNative[];for(constdofdays){conststartnewDate(d.getFullYear(),d.getMonth(),d.getDate());constendnewDate(start);end.setDate(start.getDate()1);consttotalawaitdb.getTotalAmountBetween(start,end);consttrdocument.createElement(tr);consttdDatedocument.createElement(td);consttdAmountdocument.createElement(td);tdDate.textContentstart.toISOString().slice(0,10);tdAmount.textContent${total};tr.appendChild(tdDate);tr.appendChild(tdAmount);tbody.appendChild(tr);statsForNative.push({date:tdDate.textContent,total});}syncMonthViewToNative(statsForNative);}loadMonthView函数负责根据当月所有日期从 IndexedDB 中聚合统计数据并渲染到表格中。对每一天构造[start, end)区间并调用db.getTotalAmountBetween获取该天总饮水量然后创建表格行、填入日期和数值追加到tbody。同时将{ date, total }结构加入statsForNative数组最后通过syncMonthViewToNative统一发送给 ArkTS 插件。这种模式与周视图高度一致有利于在代码层面保持统一风格降低维护成本。document.addEventListener(DOMContentLoaded,(){loadMonthView();});在DOMContentLoaded事件中触发loadMonthView确保页面结构加载完成后再执行统计操作。由于月视图涉及的天数更多统计过程会比周视图略慢但只要 IndexedDB 访问实现合理依然可以满足日常使用场景的性能要求。四、通过 Cordova 将月视图数据同步给原生functionsyncMonthViewToNative(items){if(!window.cordova){console.warn([MonthView] cordova not ready, skip native sync);return;}cordova.exec((){console.info([MonthView] sync month data success);},(err){console.error([MonthView] sync month data failed,err);},WaterTrackerMonthView,setMonthData,[items]);}syncMonthViewToNative函数与周视图对应函数类似只是插件名称与动作名称不同。这里使用WaterTrackerMonthView插件和setMonthData动作将当前月份的每日统计数据数组发送给 ArkTS 侧。原生层可以根据这份数据构建多种 UI 展示形式例如月度热力图、折线图等帮助用户从长期维度观察饮水习惯。五、OpenHarmony ArkTS 插件与月度数据缓存// entry/src/main/ets/plugins/WaterTrackerMonthViewPlugin.etsimportcommonfromohos.app.ability.common;exportinterfaceMonthDayStat{date?:string;total:number;}exportclassMonthViewStore{privatestatic_items:MonthDayStat[][];staticsetItems(items:MonthDayStat[]){this._itemsitems;}staticgetitems(){returnthis._items;}}exportdefaultclassWaterTrackerMonthViewPlugin{context:common.UIAbilityContext;constructor(ctx:common.UIAbilityContext){this.contextctx;}setMonthData(args:ArrayObject,callbackId:number){constitemsargs[0]asMonthDayStat[];MonthViewStore.setItems(items);console.info([MonthViewPlugin] receive${items.length}days);}}这段 ArkTS 代码定义了月视图插件和存储类。MonthDayStat接口定义了每日统计对象结构包含日期与总饮水量两个字段。MonthViewStore使用静态数组_items缓存当前月份所有天的统计数据并提供setItems和items访问器用于更新与读取。插件类WaterTrackerMonthViewPlugin在setMonthData方法中解析args[0]为数组存入MonthViewStore后输出日志说明收到的天数。这种模式与周视图插件高度一致便于在不同时间维度间复用思路。六、ArkUI 中展示月度概览// entry/src/main/ets/pages/MonthViewPage.etsimport{MonthViewStore}from../plugins/WaterTrackerMonthViewPlugin;Component struct MonthViewStats{build(){Column(){Text(本月喝水统计).fontSize(18).margin({bottom:8});MonthViewStore.items.forEach((item){Row(){Text(item.date||).fontSize(14);Text(${item.total}ml).fontSize(14).margin({left:8});}.margin({bottom:4});});}.padding(16)}}MonthViewStatsArkUI 组件展示了如何在原生侧消费MonthViewStore.items中的月度统计数据。组件在build方法中遍历每一天的统计对象为其创建一行包含日期和总饮水量的Row。尽管这里仍是文本列表形式但它已经可以帮助用户在原生页面中快速浏览本月每一天的喝水情况。在未来扩展中你可以将这些数据与图表控件结合或者在桌面卡片中以精简形式呈现部分信息。七、小结通过本篇文章我们实现了“月视图统计”功能在 Cordovaopenharmony 混合应用中的基础架构Web 层通过getCurrentMonthDays与loadMonthView计算本月每日总饮水量并渲染表格同时使用syncMonthViewToNative将统计结果同步到 ArkTS 插件OpenHarmony 端使用MonthViewStore和WaterTrackerMonthViewPlugin缓存这些数据并在 ArkUI 组件MonthViewStats中为用户提供原生侧的月度概览视图。文章沿用一小段代码一小段说明的写法目的是让每一步的职责和数据流向都清晰可见避免出现难以阅读的大段代码。你可以在此基础上进一步加入历史月份切换、与目标完成度的对比显示、以及更高级的趋势分析算法将“月视图统计”打造为长期习惯分析的重要入口。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

悬浮网站右侧带鼠标经过二维码显示特效代码悟空crm下载

还在为设计师与开发者的沟通障碍而烦恼吗?Sketch Measure插件为你提供一站式解决方案,让设计规范创建变得轻松有趣。这款强大的工具能够自动生成精确的尺寸标注、间距测量和完整的HTML规范文档,彻底告别设计交付的烦恼。 【免费下载链接】ske…

张小明 2025/12/29 3:28:08 网站建设

广东移动宽带官网站vps内存wordpress优化

零基础入门Whisper.cpp:5分钟搭建离线语音识别系统 【免费下载链接】whisper.cpp OpenAI 的 Whisper 模型在 C/C 中的移植版本。 项目地址: https://gitcode.com/GitHub_Trending/wh/whisper.cpp 想要在本地实现高质量的语音转文字功能,却担心复杂…

张小明 2025/12/29 3:22:38 网站建设

手机网站建设开发一个网站项目开发流程

一、什么是低代码开发平台?低代码开发平台(Low-Code Development Platform,LCDP)是一种基于图形化界面与模型驱动架构的应用开发工具集,核心特征在于通过对传统编码流程的抽象化、组件化封装,最大限度降低手…

张小明 2025/12/29 2:56:49 网站建设

中咨城建设计南京网站天津建设网官方网站

CH340G-CH340 USB转串口驱动终极安装指南 【免费下载链接】CH340G-CH340通用驱动下载 CH340G-CH340 通用驱动下载本仓库提供CH340G-CH340通用驱动的下载,支持Windows 10和Windows 7的64位操作系统 项目地址: https://gitcode.com/open-source-toolkit/2d536 …

张小明 2025/12/30 6:36:44 网站建设

大学生个人网站怎么做网页设计排版作品分析

Windows PowerShell 入门指南 1. PowerShell 简介 PowerShell 语言具有诸多一致性,使其易于学习和理解。每个 cmdlet 命令都关联着帮助主题,可通过输入 get-help 命令名称 来显示帮助信息,例如 get-help Get-Process 。参数 -Whatif 能让你在执行 cmdlet 命令前查看…

张小明 2025/12/29 2:55:37 网站建设