婚礼策划网站模板济宁神华 网站建设

张小明 2026/1/9 16:00:43
婚礼策划网站模板,济宁神华 网站建设,客户关系管理的核心是,重庆建设工程造价信息总站一、功能概述 除了时间维度外#xff0c;“喝水类型”也是一个非常重要的分析维度。例如#xff0c;用户可能想知道最近一周喝了多少白开水、多少茶水、多少含糖饮料。本篇文章围绕“类型分布统计”页面#xff0c;介绍如何在 Cordova Web 层 按类型进行聚合统计#xff0c…一、功能概述除了时间维度外“喝水类型”也是一个非常重要的分析维度。例如用户可能想知道最近一周喝了多少白开水、多少茶水、多少含糖饮料。本篇文章围绕“类型分布统计”页面介绍如何在Cordova Web 层按类型进行聚合统计并将结果同步到OpenHarmony ArkTS为原生图表或卡片展示提供数据支持。文章依旧采用一段代码一段说明的方式并包含 ArkTS 示例代码。二、Web 端类型分布页面结构dividtype-stats-pageclasspage page-type-statsh1喝水类型分布/h1tableclassdata-tableidtable-type-statstheadtrth类型/thth总饮水量 (ml)/th/tr/theadtbodyidtable-type-stats-body/tbody/table/div这段 HTML 定义了类型分布统计页面的基础结构。页面标题为“喝水类型分布”表格用于展示每种类型对应的总饮水量。与之前的列表和统计页面类似tbody使用一个占位符table-type-stats-body数据将由 JavaScript 动态插入。通过这种方式随着类型集合的变化例如新增“功能饮料”类型页面可以自动适应而无需修改静态 HTML。.page-type-stats{padding:16px 24px;}#table-type-stats td:nth-child(2){text-align:right;}CSS 部分延续了统一的布局和对齐方式。类型分布统计页面同样设置统一内边距并将第二列总饮水量列右对齐以便不同类型间的数值对比清晰易读。三、按类型聚合统计数据asyncfunctionloadTypeStats(){constrecordsawaitdb.getAllDrinkRecords();constgroupMapnewMap();records.forEach((r){constkeyr.type||unknown;constcurrentgroupMap.get(key)||0;groupMap.set(key,currentr.amount);});consttbodydocument.getElementById(table-type-stats-body);if(!tbody)return;tbody.innerHTML;conststatsForNative[];groupMap.forEach((total,type){consttrdocument.createElement(tr);consttdTypedocument.createElement(td);consttdTotaldocument.createElement(td);tdType.textContenttype;tdTotal.textContent${total};tr.appendChild(tdType);tr.appendChild(tdTotal);tbody.appendChild(tr);statsForNative.push({type,total});});syncTypeStatsToNative(statsForNative);}loadTypeStats函数展示了如何按类型对所有喝水记录进行聚合统计。首先调用db.getAllDrinkRecords获取所有记录数组然后使用Map以type为键进行累加。对于没有设置类型的记录这里统一归类为unknown。聚合完成后遍历groupMap为每种类型创建一行表格行填入类型名称和总饮水量并追加到tbody。同时将{ type, total }对象加入statsForNative数组最后调用syncTypeStatsToNative将这份分布统计数据发送给 ArkTS 插件。document.addEventListener(DOMContentLoaded,(){loadTypeStats();});在DOMContentLoaded事件中调用loadTypeStats让页面在加载完成后立即展示当前的类型分布情况。这样的实现方式适合数据量不大的本地应用能够在用户打开页面时提供及时的分析结果。四、通过 Cordova 将类型分布同步给原生functionsyncTypeStatsToNative(items){if(!window.cordova){console.warn([TypeStats] cordova not ready, skip native sync);return;}cordova.exec((){console.info([TypeStats] sync type stats success);},(err){console.error([TypeStats] sync type stats failed,err);},WaterTrackerTypeStats,setTypeStats,[items]);}syncTypeStatsToNative函数通过 Cordova 的exec接口将类型分布统计结果发送给 ArkTS 插件。参数items是一个数组数组中的每个元素包含type和total字段。函数内部检查window.cordova是否存在然后调用插件WaterTrackerTypeStats的setTypeStats动作将数组打包发送。原生层可以利用这份数据在 ArkUI 中绘制饼图、条形图或其他类型分布图表。五、OpenHarmony ArkTS 插件与类型分布存储// entry/src/main/ets/plugins/WaterTrackerTypeStatsPlugin.etsimportcommonfromohos.app.ability.common;exportinterfaceTypeStatItem{type:string;total:number;}exportclassTypeStatsStore{privatestatic_items:TypeStatItem[][];staticsetItems(items:TypeStatItem[]){this._itemsitems;}staticgetitems(){returnthis._items;}}exportdefaultclassWaterTrackerTypeStatsPlugin{context:common.UIAbilityContext;constructor(ctx:common.UIAbilityContext){this.contextctx;}setTypeStats(args:ArrayObject,callbackId:number){constitemsargs[0]asTypeStatItem[];TypeStatsStore.setItems(items);console.info([TypeStatsPlugin] receive${items.length}types);}}这段 ArkTS 代码定义了类型分布插件和存储类。TypeStatItem接口描述了每个类型统计对象的结构包含类型名称和总饮水量两个字段。TypeStatsStore使用静态数组_items缓存从 Web 传来的分布数据并提供setItems与items方法供外部访问。插件类WaterTrackerTypeStatsPlugin在setTypeStats方法中接收args[0]数组存入TypeStatsStore并输出接收到的类型数量。这种封装模式使得 ArkUI 组件可以随时访问最新的类型分布数据而不需要直接与 Cordova 或数据库交互。六、ArkUI 中展示类型分布列表// entry/src/main/ets/pages/TypeStatsPage.etsimport{TypeStatsStore}from../plugins/WaterTrackerTypeStatsPlugin;Componentstruct TypeStatsView{build(){Column(){Text(喝水类型分布).fontSize(18).margin({bottom:8});TypeStatsStore.items.forEach((item){Row(){Text(item.type).fontSize(14);Text(${item.total}ml).fontSize(14).margin({left:8});}.margin({bottom:4});});}.padding(16)}}TypeStatsViewArkUI 组件展示了如何在原生侧消费TypeStatsStore.items中的类型分布数据。组件在build方法中通过遍历数组为每个类型构建一行Row包含类型名称和对应总饮水量两个Text。这种列表形式虽然简单但已经足够支持原生页面中的基本统计展示。在后续扩展中你可以将这些数据用于绘制饼图、条形图或者在桌面卡片上展示分布的前几名类型从而让用户更直观地了解自己的饮水偏好。七、小结本篇文章以“类型分布统计”为例展示了如何在 Cordovaopenharmony 混合应用中按非时间维度进行多维分析。Web 层通过loadTypeStats函数从 IndexedDB 读取所有喝水记录并使用Map按类型进行聚合统计再通过syncTypeStatsToNative将分布结果发送给 ArkTS 插件OpenHarmony 端使用TypeStatsStore和WaterTrackerTypeStatsPlugin缓存分布数据并在 ArkUI 组件TypeStatsView中为用户提供原生侧的类型分布列表展示。在一小段代码一小段说明的写作方式下本文强调了“通过简单聚合就能从基础记录中挖掘出更多信息”的理念。你可以基于同样的思路扩展对容器、时间段例如早中晚、喝水场景等多个维度的统计分析从而把喝水记录应用升级为真正意义上的个人饮水行为洞察工具。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

杭州平面设计公司网站优化计划

终极解决方案:用GBT7714样式库一键搞定国标引用格式 【免费下载链接】gbt7714-bibtex-style GB/T 7714-2015 BibTeX Style 项目地址: https://gitcode.com/gh_mirrors/gb/gbt7714-bibtex-style 还在为学术论文的参考文献格式头疼不已吗?GBT7714 B…

张小明 2026/1/9 4:18:51 网站建设

仿站工具箱网页版长沙网站建设的首选

数据链路层如何“打包”数据?四种帧封装方法详解在计算机网络中,数据链路层负责将网络层交付的数据包封装成帧(Frame),以便在物理链路上可靠传输。而封装成帧的核心问题之一是:如何让接收方准确识别一帧的开…

张小明 2026/1/9 5:37:58 网站建设

济南网站建设就选搜点网络ok长沙做电商网站设计

YOLOv8如何应用于体育赛事动作分析? 在一场激烈的足球比赛中,球员高速奔跑、频繁变向、多人重叠争抢,摄像机画面中瞬息万变。教练需要快速判断某次进攻是否形成有效射门,裁判要确认是否有隐蔽犯规,而分析师则希望统计每…

张小明 2026/1/9 5:37:56 网站建设

江苏网站建设系统方案爆款采集推广引流软件

一幅充满东方哲学韵味与现代设计感的展览概念图。整体背景为深沉、带有肌理质感的墨色或暗灰色,如同古旧宣纸或夜幕下的山峦,营造出一种庄重、内敛且富有历史纵深感的氛围。画面中央是一个由金色细线勾勒出的巨大、立体的三维空间结构,仿佛一…

张小明 2026/1/9 5:37:54 网站建设

企业自助建站系统 嘉兴平面设计培训地址机构

如何实现学术引用自动化:告别GB/T 7714格式困扰的终极方案 【免费下载链接】Chinese-STD-GB-T-7714-related-csl GB/T 7714相关的csl以及Zotero使用技巧及教程。 项目地址: https://gitcode.com/gh_mirrors/chi/Chinese-STD-GB-T-7714-related-csl 你是否曾在…

张小明 2026/1/9 5:37:52 网站建设

建湖专业做网站的公司搜索引擎优化的要点

前言在 Java 技术社区化学习、交流需求升级背景下,传统技术论坛存在 “内容分类混乱、问答响应慢、资源整合不足” 的痛点,基于 SpringBoot 构建的 Java 技术交流论坛,适配新手开发者、资深工程师、版主、平台管理员等角色,实现帖…

张小明 2026/1/9 5:37:50 网站建设