恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

鸿蒙 ArkTS 实战|用卡片组件重构化合反应学习

  • 首页
  • 资讯中心
  • /
  • 鸿蒙 ArkTS 实战|用卡片组件重构化合反应学习

相关资讯

抖音批量下载工具 douyin-downloader:3 步跑通批量下载,附增量更新与避坑指南 2026/8/25 22:15:37
Z轴压电位移台选型与现场故障排查:从参数陷阱到物理极限的工程实践 2026/8/25 22:15:37
AI率过高难达标?2026年10款主流降AI率工具合集(含免费版),实测80%到9.7% 2026/8/25 22:10:36

最新资讯

国产AI数据大屏生成工具对比分析与数字孪生大屏选型指南
嘎嘎降AI和火龙果写作哪个好:2026年博士论文降AI工具亲测深度对比分析
C++结构体排序实战:重载、函数与Lambda三种方式详解
FMA|完整音乐分析数据集,106,574 首曲目与 917 GiB CC 音频
AI Skill 全面介绍:从概念到实战应用
拼多多#PDD#2027届#秋招#最后一天啦

今日推荐

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南
洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表
Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

本周热门

Nextcloud 桌面客户端:把同步交给它,你只管改文件
如何将 HTML 转成 Word 文档且格式不丢失?html-to-docx 使用教程
Anki 批量操作卡片完整指南:一次搞定上千张,不再逐张修改

本月精选

如何用DamaiHelper实现演唱会门票的智能自动化抢购:完整技术解决方案指南
第4篇:59 倍性能差距的索引瓶颈定位——一次教科书级的全表扫描调优
终极歌词批量下载神器:5分钟解决离线音乐库歌词同步难题

鸿蒙 ArkTS 实战|用卡片组件重构化合反应学习

发布时间:2026/8/25 22:15:37
鸿蒙 ArkTS 实战|用卡片组件重构化合反应学习 一、设计思路化合反应多变一的知识点结构化程度高非常适合 ArkTS 的数据驱动 组件化开发。我们把每个方程式建模为interface用Prop属性传递、ForEach批量渲染成统一卡片四个反应类型页面复用同一个EquationCard组件。二、数据模型Equation 接口// 化合反应数据模型interfaceEquation{equation:string;// 化学方程式condition:string;// 反应条件点燃 / 加热 / 常温phenomenon:string;// 实验现象note:string;// 易错点 / 考点备注}三、公共卡片组件EquationCard.ets/** * 化学方程式展示卡片公共组件 * 化合 / 分解 / 置换 / 复分解四个页面复用 */Componentexportstruct EquationCard{Propequation:string;Propcondition:string;Propphenomenon:string;Propnote:string;PropaccentColor:string#4C7DFF;build(){Column({space:10}){// 方程式主体Text(this.equation).fontSize(17).fontWeight(FontWeight.Bold).fontColor(#111827).width(100%).textAlign(TextAlign.Center).lineHeight(26)// 反应条件标签空则不显示if(this.condition.length0){Text(this.condition).fontSize(12).fontColor(this.accentColor).backgroundColor(this.accentColor1A).padding({left:12,right:12,top:3,bottom:3}).borderRadius(10).margin({top:2})}Divider().color(#EEF2F7).strokeWidth(1).margin({top:4,bottom:4})// 实验现象if(this.phenomenon.length0){Row({space:6}){Text().fontSize(14)Text(this.phenomenon).fontSize(13).fontColor(#4B5563).layoutWeight(1).lineHeight(20)}.width(100%).alignItems(VerticalAlign.Top)}// 备注if(this.note.length0){Row({space:6}){Text().fontSize(14)Text(this.note).fontSize(13).fontColor(#6B7280).layoutWeight(1).lineHeight(20)}.width(100%).alignItems(VerticalAlign.Top)}}.width(100%).padding(16).borderRadius(16).backgroundColor(Color.White).border({width:1,color:#E5EAF2})}}四、化合反应页面CombinationReaction.etsimport{router}fromkit.ArkUI;import{EquationCard}from../common/EquationCard;/** * 化合反应学习页多变一通式A B → AB */EntryComponentstruct CombinationReaction{privatethemeColor:string#4C7DFF;privateequations:Equation[][{equation:2Mg O₂ → 2MgO,condition:点燃,phenomenon:发出耀眼白光放出大量热,note:生成白色固体氧化镁镁带燃烧是中考常考点},{equation:4P 5O₂ → 2P₂O₅,condition:点燃,phenomenon:产生大量白烟放出热量,note:红磷燃烧可用于测定空气中氧气含量},{equation:3Fe 2O₂ → Fe₃O₄,condition:点燃,phenomenon:剧烈燃烧火星四射放热,note:集气瓶底放少量水或细沙防止高温熔落物炸裂瓶底},{equation:C O₂ → CO₂,condition:点燃,phenomenon:发出白光放热,note:生成能使澄清石灰水变浑浊的气体},{equation:2C O₂ → 2CO,condition:点燃氧气不充足,phenomenon:发出蓝色火焰放热,note:碳不完全燃烧生成一氧化碳CO 有毒注意通风},{equation:S O₂ → SO₂,condition:点燃,phenomenon:发出明亮的蓝紫色火焰放热,note:SO₂ 有刺激性气味是空气污染物},{equation:2H₂ O₂ → 2H₂O,condition:点燃,phenomenon:发出淡蓝色火焰放热,note:点燃氢气前必须先验纯防止爆炸},{equation:2CO O₂ → 2CO₂,condition:点燃,phenomenon:发出蓝色火焰放热,note:CO 是可燃性有毒气体尾气需处理},{equation:CO₂ H₂O → H₂CO₃,condition:常温,phenomenon:无明显现象,note:碳酸使紫色石蕊变红加热后又恢复紫色},{equation:CaO H₂O → Ca(OH)₂,condition:常温放热,phenomenon:放出大量热,note:生石灰作食品干燥剂产物为熟石灰},{equation:2Na Cl₂ → 2NaCl,condition:点燃,phenomenon:剧烈燃烧发出黄色火焰,note:钠在氯气中燃烧生成白烟氯化钠固体小颗粒}];build(){Column(){// 顶部标题栏Row(){Text(‹).fontSize(34).fontColor(Color.White).onClick(()router.back())Text(化合反应).fontSize(20).fontWeight(FontWeight.Bold).fontColor(Color.White).margin({left:8})Blank()}.width(100%).height(56).padding({left:10,right:16}).backgroundColor(this.themeColor)Scroll(){Column({space:14}){// 定义卡片Column({space:8}){Text( 什么是化合反应).fontSize(16).fontWeight(FontWeight.Bold).fontColor(#111827).width(100%)Text(由两种或两种以上的物质生成另一种物质的反应。).fontSize(14).fontColor(#4B5563).lineHeight(22).width(100%)Text(特征多变一。判断时只看生成物是否只有一种。).fontSize(13).fontColor(this.themeColor).width(100%)}.width(100%).padding(16).borderRadius(16).backgroundColor(#EAF0FF).border({width:1,color:#D4E2FF})// 通式卡片Column({space:6}){Text(通式).fontSize(12).fontColor(#9CA3AF).width(100%)Text(A B → AB).fontSize(22).fontWeight(FontWeight.Bold).fontColor(this.themeColor).width(100%).textAlign(TextAlign.Center)}.width(100%).padding(16).borderRadius(16).backgroundColor(Color.White).border({width:1,color:#E5EAF2})// ForEach 批量渲染方程式卡片ForEach(this.equations,(item:Equation){EquationCard({equation:item.equation,condition:item.condition,phenomenon:item.phenomenon,note:item.note,accentColor:this.themeColor})},(item:Equation)item.equation)// 口诀卡片Column({space:8}){Text(️ 记忆口诀).fontSize(16).fontWeight(FontWeight.Bold).fontColor(#111827).width(100%)Text(多变一化合记生成物只看一种别把燃烧混进来。).fontSize(14).fontColor(#4B5563).lineHeight(24).width(100%)}.width(100%).padding(16).borderRadius(16).backgroundColor(#FFF7E6).border({width:1,color:#FDEBC8})}.padding(14)}.layoutWeight(1).scrollBar(BarState.Off)}.height(100%).width(100%).backgroundColor(#F4F6FA)}}五、代码要点组件复用EquationCard用Prop接收数据四个反应类型页面共享同一卡片样式只改accentColor换主题色。数据驱动interface Equation定义结构化数据ForEach遍历渲染增删方程式只需改数组。唯一渲染键ForEach第三个参数(item) item.equation保证列表 diff 高效。六、化合反应速记要点内容定义多种物质 → 一种物质A B → AB判定只看生成物是否唯一常见现象Mg 耀眼白光、S 蓝紫色火焰、Fe 火星四射、P 白烟、H₂ 淡蓝色火焰典型易错铁丝燃烧生成 Fe₃O₄ 而非 Fe₂O₃点燃前氢气必须验纯口诀多变一化合记生成物只看一种

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号