鸿蒙应用开发之京东页面案例

news/2025/11/14 11:18:37/文章来源:https://www.cnblogs.com/guble/p/19221172

1.案例效果

image

2. 搭建页面框架

@Entry
@Component
struct Index {currentIndex: number = 0build() {Column() {Tabs() {TabContent() {Home()}.tabBar(this.TabBarBuilder(0, $r('app.media.ic_home'), '首页'))TabContent() {Category()}.tabBar(this.TabBarBuilder(1, $r('app.media.ic_category'), '分类'))TabContent() {}.tabBar(this.TabBarBuilder(2, $r('app.media.ic_shopcar'), '购物车'))TabContent() {}.tabBar(this.TabBarBuilder(3, $r('app.media.ic_my'), '首页'))}.width('100%').height('100%').barHeight(50).barWidth('100%').barBackgroundColor(Color.White).barPosition(BarPosition.End).onChange(index => {this.currentIndex = index}).scrollable(false).animationDuration(0)}.height('100%').width('100%').backgroundColor('#EAEEF4')}@State currentIndex: number = 2@BuilderTabBarBuilder(index: number, icon: ResourceStr, text: string) {Column() {Image(icon).width(25).fillColor(this.currentIndex === index ? '#F51608' : '#87A3C3')Text(text).fontSize(12).fontColor(this.currentIndex === index ? '#F51608' : '#87A3C3')}.height('100%').justifyContent(FlexAlign.Center)}
}

3. 首页

image (1)

@Component
export struct Home {//提供一个商品的数组goodsList:Goods[] = [new Goods("https://img14.360buyimg.com/mobilecms/s360x360_jfs/t1/197978/10/39051/92387/667e0fe5F3b1c2ce9/ab30f25b23c99c90.jpg!q70.dpg.webp","温鑫福单人沙发床折叠两用2024新款首发值得拥有限时抢购",299,500,true),new Goods("https://img14.360buyimg.com/mobilecms/s360x360_jfs/t1/221991/34/39149/80586/6623f28bFcff4dee3/ea50b82382c17f01.jpg!q70.dpg.webp","蓝月亮深层清洁护理液薰衣草香一瓶顶10瓶",15,10000,false),new Goods("https://img14.360buyimg.com/mobilecms/s360x360_jfs/t1/180401/28/46743/63818/667903e6Faeacc268/16777ee79837e935.png.webp","【PU超纤】【真皮软牛皮】特价清仓处理",300,2000,false),new Goods("https://img14.360buyimg.com/mobilecms/s360x360_jfs/t1/229009/35/26100/149457/66ea6eb3F2843ec74/ceb575088252ca9f.jpg!q70.dpg.webp","京东超市乐而雅花王零触感特薄夜用卫生巾 30",500,2500,true)]build() {Column() {//首页标题栏Row({ space: 10 }) {Image($r('app.media.ic_jd_menu')).width(30).height(30)Search({ icon: "/images/ic_jd_search.png", placeholder: '机顶盒' }).backgroundColor(Color.White).height(30).layoutWeight(1)Text('登录').fontColor(Color.White)}.width('100%').height(50).backgroundColor('#EC615B').padding({ left: 10, right: 10 })Scroll(){Column(){//首页轮播Row() {Row() {Swiper() {Row() {this.SwiperItemBuilder('https://img12.360buyimg.com/babel/jfs/t20270715/38278/23/22574/7960/6694edb4F07db03e3/d663cd498321eadc.png','京东超市')this.SwiperItemBuilder('https://m.360buyimg.com/babel/jfs/t20270715/237082/37/21845/7616/6694edddFc764124a/38d00b686257b0f4.png','京东电器')this.SwiperItemBuilder('https://img20.360buyimg.com/babel/jfs/t20270715/36751/25/21385/7651/6694ee02F878cddef/13ce837dd39ad1ad.png','服饰美妆')this.SwiperItemBuilder('https://img20.360buyimg.com/babel/jfs/t20270715/44839/8/24550/7935/6694ee27F8775a577/b63c6a2fa0327964.png','充值中心')this.SwiperItemBuilder('https://img14.360buyimg.com/babel/jfs/t20270715/243181/3/13649/9018/6694ee5fF6aa391d4/1b020aa3f9cf89a0.png','PLUS会员')}.width('100%').height('100%').justifyContent(FlexAlign.SpaceEvenly)Row() {this.SwiperItemBuilder('https://img12.360buyimg.com/babel/jfs/t20270715/38278/23/22574/7960/6694edb4F07db03e3/d663cd498321eadc.png','京东超市')this.SwiperItemBuilder('https://m.360buyimg.com/babel/jfs/t20270715/237082/37/21845/7616/6694edddFc764124a/38d00b686257b0f4.png','京东电器')this.SwiperItemBuilder('https://img20.360buyimg.com/babel/jfs/t20270715/36751/25/21385/7651/6694ee02F878cddef/13ce837dd39ad1ad.png','服饰美妆')this.SwiperItemBuilder('https://img20.360buyimg.com/babel/jfs/t20270715/44839/8/24550/7935/6694ee27F8775a577/b63c6a2fa0327964.png','充值中心')this.SwiperItemBuilder('https://img14.360buyimg.com/babel/jfs/t20270715/243181/3/13649/9018/6694ee5fF6aa391d4/1b020aa3f9cf89a0.png','PLUS会员')}.width('100%').height('100%').justifyContent(FlexAlign.SpaceEvenly)}.width('100%').height('100%')}.backgroundColor(Color.White).width('95%').height('90%').borderRadius(10)}.backgroundColor('#EC615B').width('100%').height(100).justifyContent(FlexAlign.Center).linearGradient({colors: [['#EC615B', 0], ['#F6F6F6', 0.8]]})//京东秒杀Row() {Row() {Column({space:8}){Image($r('app.media.ic_jd_ms_font')).width(80)Text('限时低价').fontColor(Color.White).fontWeight(FontWeight.Medium)Row({space:4}){Text('去抢购').fontColor(Color.Red).fontSize(10)Image($r('app.media.ic_jd_goto_ms')).width(10)}.backgroundColor(Color.White).borderRadius(10).padding(3)}.width('30%').height('100%').alignItems(HorizontalAlign.Start).justifyContent(FlexAlign.Center).padding({left:10})Row(){//滑动组件:里面只能有一个容器组件Scroll(){Row({space:10}){this.MiaoShaItemBuilder('https://m.360buyimg.com/seckillcms/jfs/t1/6784/2/39589/151768/66f23a22Fcf78d7b3/93f15eccdc1bb635.jpg','¥1999')this.MiaoShaItemBuilder('https://m.360buyimg.com/seckillcms/jfs/t1/6784/2/39589/151768/66f23a22Fcf78d7b3/93f15eccdc1bb635.jpg','¥1999')this.MiaoShaItemBuilder('https://m.360buyimg.com/seckillcms/jfs/t1/6784/2/39589/151768/66f23a22Fcf78d7b3/93f15eccdc1bb635.jpg','¥1999')this.MiaoShaItemBuilder('https://m.360buyimg.com/seckillcms/jfs/t1/6784/2/39589/151768/66f23a22Fcf78d7b3/93f15eccdc1bb635.jpg','¥1999')this.MiaoShaItemBuilder('https://m.360buyimg.com/seckillcms/jfs/t1/6784/2/39589/151768/66f23a22Fcf78d7b3/93f15eccdc1bb635.jpg','¥1999')this.MiaoShaItemBuilder('https://m.360buyimg.com/seckillcms/jfs/t1/6784/2/39589/151768/66f23a22Fcf78d7b3/93f15eccdc1bb635.jpg','¥1999')this.MiaoShaItemBuilder('https://m.360buyimg.com/seckillcms/jfs/t1/6784/2/39589/151768/66f23a22Fcf78d7b3/93f15eccdc1bb635.jpg','¥1999')this.MiaoShaItemBuilder('https://m.360buyimg.com/seckillcms/jfs/t1/6784/2/39589/151768/66f23a22Fcf78d7b3/93f15eccdc1bb635.jpg','¥1999')this.MiaoShaItemBuilder('https://m.360buyimg.com/seckillcms/jfs/t1/6784/2/39589/151768/66f23a22Fcf78d7b3/93f15eccdc1bb635.jpg','¥1999')this.MiaoShaItemBuilder('https://m.360buyimg.com/seckillcms/jfs/t1/6784/2/39589/151768/66f23a22Fcf78d7b3/93f15eccdc1bb635.jpg','¥1999')}}.scrollable(ScrollDirection.Horizontal).scrollBar(BarState.Off)}.height('96%').layoutWeight(1).backgroundColor(Color.White).borderRadius(10).padding({left:10,right:10})}.width('100%').height('100%').backgroundImage($r('app.media.jd_ms_bg')).backgroundImageSize(ImageSize.Cover).borderRadius(10).margin({top:10}).padding({right:2.5})}.width('100%').height(120).padding({ left: 10, right: 10 })//商品列表(网格组件)Row(){Grid(){ForEach(this.goodsList,(item:Goods)=>{this.GoodsGridItem(item)})}.columnsTemplate("1fr 1fr").columnsGap(10).rowsGap(10).margin({top:20})}.padding({left:10,right:10})}}.layoutWeight(1).scrollBar(BarState.Off)}.width('100%').height('100%').backgroundColor('#F6F6F6')}@BuilderGoodsGridItem(item:Goods) {GridItem(){Column(){Image(item.imageUrl).borderRadius({topLeft:10,topRight:10})Column({space:8}){Stack({alignContent:Alignment.TopStart}){Text(item.description).maxLines(2).fontSize(16).textOverflow({overflow:TextOverflow.Ellipsis})if (item.jdMarketStatus){Image($r('app.media.ic_jd_market')).width(50)}}Text(`¥${item.price}`).fontWeight(FontWeight.Medium).fontColor(Color.Red)Row(){Text(`${item.commentCount}条评论`).fontSize(12).fontWeight(FontWeight.Medium).fontColor(Color.Gray)Text('看相似').backgroundColor('#F2F2F2').borderColor(10).padding({left:10,right:10}).fontSize(12).fontWeight(FontWeight.Medium)}.width('100%').justifyContent(FlexAlign.SpaceBetween)}.width('100%').alignItems(HorizontalAlign.Start).margin({top:10}).padding({left:10,right:10,bottom:10})}.backgroundColor(Color.White).borderRadius({bottomLeft:10,bottomRight:10})}}//用来构建京东描述的UI@BuilderMiaoShaItemBuilder(imageUrl: string, text: string) {Column({space:10}){Image(imageUrl).width(50)Text(text).fontColor(Color.Red).fontWeight(FontWeight.Medium)}.alignItems(HorizontalAlign.Center)}@BuilderSwiperItemBuilder(image: string, text: string) {Column({ space: 10 }) {Image(image).width(25).height(25)Text(text).fontSize(12)}.height('100%').justifyContent(FlexAlign.Center)}
}//商品类:用来封装每一个商品的数据
class Goods{imageUrl:stringdescription:stringprice:numbercommentCount:numberjdMarketStatus:boolean = false //true是京东超市,false不是京东超市constructor(imageUrl: string, description: string, price: number, commentCount: number,jdMarketStatus:boolean) {this.imageUrl = imageUrlthis.price = pricethis.commentCount = commentCountthis.jdMarketStatus = jdMarketStatusif (this.jdMarketStatus) {this.description = "             "+description}else{this.description = description}}
}

4. 分类

image (2)

4.1 分类导航

import { WomenDress } from './WomenDress'@Component
export struct Category {categoryNames: string[] = ['电器', '洗护', '女装', '手机', '健康', '男装', '美妆', '电脑', '运动', '内衣', '母婴', '数码', '百货', '鞋包','办公', '家装', '饰品', '车品', '图书', '生鲜', '家纺']build() {Column() {Tabs({ barPosition: BarPosition.Start, index: this.currentIndex }) {ForEach(this.categoryNames, (name: string, index: number) => {TabContent() {if (name==='女装') {WomenDress()}}.tabBar(this.TabBarBuilder(index, name))})}.vertical(true).barWidth(100).barMode(BarMode.Scrollable)}}@State currentIndex: number = 0@BuilderTabBarBuilder(index: number, text: string) {Text(text).width('100%').height(50).backgroundColor(this.currentIndex === index ? Color.White : '#F8F8F8').textAlign(TextAlign.Center).onClick(() => {this.currentIndex = index})}
}

4.2 分类内容

@Component
export struct WomenDress {hotSellerList: HotSeller[] = [new HotSeller("https://m.360buyimg.com/babel/jfs/t1/109228/18/39184/5394/6465dcebF181426f6/538d2b20051b085f.jpg",'卫衣'),new HotSeller("https://m.360buyimg.com/babel/jfs/t1/216457/11/21629/2132/6388e999E8ce79687/978ced6fc84fa089.jpg",'针织衫'),new HotSeller("https://m.360buyimg.com/babel/jfs/t1/221444/22/25322/4698/6465dcdfFd742fbe6/f408917b9e76970c.jpg",'牛仔裤'),new HotSeller("https://m.360buyimg.com/babel/jfs/t1/141592/17/35597/2793/643e1416Ff7c6ed7d/c2af3f2744ccad75.jpg",'短外套'),new HotSeller("https://m.360buyimg.com/babel/jfs/t1/123739/38/37494/3885/6464a10aF24a21b8f/77c8ca19999ec7ae.jpg",'连衣裙'),new HotSeller("https://m.360buyimg.com/babel/jfs/t1/95562/9/23497/3620/6465dccaF6e94393d/1b0f99c8025f1061.jpg",'短袖'),new HotSeller("https://m.360buyimg.com/babel/jfs/t1/130210/40/37370/2119/646dd6bdFaedb67df/f88d736729ccf2f0.jpg",'短外套'),new HotSeller("https://m.360buyimg.com/babel/jfs/t1/134338/28/33700/7542/646dd70dF37610f24/58e9a6404e258ae4.jpg",'短裤'),new HotSeller("https://m.360buyimg.com/babel/jfs/t1/56989/35/24891/6960/6465dcf4F8694df82/b61c2117f7910d02.jpg",'衬衫'),]build() {Scroll(){Column({space:20}) {Column({space:10}){Text('热卖选购').fontSize(18).fontWeight(FontWeight.Bold).fontColor(Color.Black).width("100%")Row() {Grid() {ForEach(this.hotSellerList, (item: HotSeller) => {this.HotSellerGridItem(item.imageUrl, item.text)})}.columnsTemplate("1fr 1fr 1fr").rowsGap(10).columnsGap(10)}.padding({left: 10, right: 10})}Column({space:10}){Text('女士上衣').fontSize(18).fontWeight(FontWeight.Bold).fontColor(Color.Black).width("100%")Row() {Grid() {ForEach(this.hotSellerList, (item: HotSeller) => {this.HotSellerGridItem(item.imageUrl, item.text)})}.columnsTemplate("1fr 1fr 1fr").rowsGap(10).columnsGap(10)}.padding({left: 10, right: 10})}Column({space:10}){Text('裤子').fontSize(18).fontWeight(FontWeight.Bold).fontColor(Color.Black).width("100%")Row() {Grid() {ForEach(this.hotSellerList, (item: HotSeller) => {this.HotSellerGridItem(item.imageUrl, item.text)})}.columnsTemplate("1fr 1fr 1fr").rowsGap(10).columnsGap(10)}.padding({left: 10, right: 10})}}}}@BuilderHotSellerGridItem(imageUrl: string, text: string) {GridItem() {Column() {Image(imageUrl).width(70)Text(text)}}}
}class HotSeller {imageUrl: stringtext: stringconstructor(imageUrl: string, text: string) {this.imageUrl = imageUrlthis.text = text}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/965164.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年11月酵母抽提物品牌榜:清洁标签需求下的性能参数对比

站在食品研发实验室的排风口前,你或许正为下一款清洁标签汤料寻找“味精替代方案”;也可能坐在采购部电脑前,对比不同供应商的呈味核苷酸含量与报价;又或者你是小型酱料厂老板,想在不增加成本的前提下让鲜味更持久…

2025年11月两融开户券商榜单:五强数据对比与客观排名

2025年四季度,两融余额已突破1.6万亿元,环比增速连续三个月高于同期市场成交量,杠杆资金活跃度明显提升。对于计划新开或迁移信用账户的投资者而言,如何筛选一家“资质硬、费率透明、系统稳、服务跟得上”的券商,…

2025年国内冷藏柜供应厂家权威榜单

文章摘要 2025年冷藏柜行业在医药冷链领域持续创新,技术驱动发展,江苏中美达制冷科技有限公司凭借ISO认证和定制服务领跑市场。本文基于权威数据,解析前十厂家排名,提供行业趋势和选择指南,帮助用户规避采购风险。…

2025年福田欧曼深度解析:全场景产品矩阵与节能技术透视

引言:本文聚焦“全品类、全场景产品覆盖与节能技术”维度,对福田欧曼进行系统拆解,为潜在购车者、物流车队及行业观察者提供一份可量化、可验证的客观参考。 背景与概况:欧曼重卡是北汽福田汽车旗下重卡品牌,起步…

2025年11月智能学习机品牌推荐:主流排行榜与口碑对比避坑指南

一、引言 在“双减”政策持续深化、家庭教育支出结构重塑的背景下,智能学习机已从“可选电子产品”升级为“刚需教育硬件”。对于每天需兼顾工作与辅导的中小学生家长、追求高效提分的初高中生,以及希望一次性控制预…

2025年11月两融开户券商排行:从资质到费率五强深度比较

正在准备两融账户的投资者,往往面临“谁能给我更低利率、更稳系统、更快通道”的三连问。2025年四季度,沪深两市融资融券余额站稳1.6万亿元关口,环比增幅连续三个月保持3%以上,交易活跃度回升带动开户需求集中释放…

2025年比较好的冲气密封圈厂家实力及用户口碑排行榜

2025年比较好的充气密封圈厂家实力及用户口碑排行榜行业背景与市场趋势充气密封圈作为工业密封领域的关键部件,近年来随着航空航天、轨道交通、新能源等行业的快速发展,市场需求持续增长。据《2024-2029年中国密封制…

CMP (类ClouderaCDP7.3(404次编译) )华为鲲鹏Aarch64(ARM)信创环境 查询2100w行 hive 查询策略 - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025年福田欧曼深度解析:技术驱动下的全场景重卡竞争力

引言 本文将从“技术驱动与产品矩阵”这一核心维度出发,为读者提供一份针对福田欧曼重卡的客观参考。围绕其动力链、自动挡节能技术、新能源路线、场景化定制及市场验证数据,结合第三方权威报告与行业实测,系统梳理…

2025年11月昆明泌尿医院排名榜:五家机构深度评测与选择指南

“夜里频繁起夜、排尿灼痛,又不好意思跟家人说”,这是不少昆明上班族在后台留言的高频场景。泌尿生殖问题看似“难言之隐”,却直接影响睡眠、情绪与工作效率。2025年云南省卫健委发布的《居民泌尿健康白皮书》显示,…

2025年十大自动化钣金加工厂家:产能与服务全解析,最新知名的钣金加工厂商推荐榜单睿意达显著提升服务

行业概览 随着制造业智能化转型加速,自动化钣金加工行业正迎来新一轮发展机遇。本文基于公开市场数据与产能表现,对行业内具有代表性的五家自动化钣金加工企业进行深度解析,为行业用户提供专业参考。 企业实力排行 …

2025 年 11 月闸阀厂家推荐排行榜,美标闸阀,国标闸阀,锻钢闸阀,高压闸阀,高温闸阀,焊接闸阀,法兰闸阀公司推荐

2025年11月闸阀厂家推荐排行榜:专业解析美标、国标、锻钢等各类闸阀优选指南 在工业流体控制领域,闸阀作为关键的控制元件,其性能和质量直接影响整个系统的安全稳定运行。随着工业技术的不断发展,各类闸阀产品在材…

2025年昆明泌尿生殖医院权威深度解析:专业诊疗体系惠民服务透视

引言:本文将从“服务流程与患者体验”这一核心维度出发,为读者提供一份可对照、可验证的客观参考,帮助有泌尿生殖健康需求的人群在就医前快速判断机构是否匹配自身诉求。 背景与概况:昆明泌尿生殖医院对外公布的官…

2025美标/国标/锻钢/高压/碳钢/高温/焊接/法兰闸阀厂家推荐浙江超成阀门

2025美标/国标/锻钢/高压/碳钢/高温/焊接/法兰闸阀技术趋势与产业升级 行业技术挑战与创新突破 当前全球工业阀门领域正面临严峻的技术升级压力。美标闸阀在高温高压工况下的密封性能衰减问题日益凸显,据统计,在超过…

2025年11月昆明泌尿医院推荐榜:五家机构真实数据横向对比

早上七点,昆明地铁火车北站B出口已经有人拿着检查单在问路,他们大多30-50岁,面色焦虑,担心隐私泄露、费用不透明、疗效不确定。泌尿生殖系统疾病发病隐匿、复诊率高,一旦选错机构,时间和金钱成本都会被放大。云南…

2025年11月geo优化公司推荐:主流服务提供商排行榜与口碑对比指南

一、引言 在人工智能技术快速演进并深度融入商业运营的今天,geo优化公司已成为企业把握AI搜索生态机遇、提升品牌影响力的关键支撑。本文主要面向企业主、市场营销负责人及数字化转型决策者,这些用户的核心需求在于通…

2025年11月昆明泌尿医院排行:五强单位服务与资质全解析

2025年11月,昆明进入秋冬交替,昼夜温差大,泌尿生殖系统易受寒冷刺激出现尿频、尿急、前列腺炎复发或女性尿路感染加重等问题。对于需要及时干预却又担心隐私泄露、费用不透明、疗效难评估的患者而言,如何快速锁定一…

2025年11月上海遗产继承律师排行榜:五家机构口碑对比与评价

“父亲突然离世,外地户口的姑姑拿出一份三十年前的手写遗嘱,要求分割上海老宅,我该怎么办?”——这是过去十二个月里,上海12348热线接到的高频咨询场景之一。随着城市更新、家庭结构多元、资产跨境化,遗产继承不…

K8s HTTPS流量管理实战:GatewayAPI指南 - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025年11月geo公司推荐:主流服务商排行榜与高性价比解决方案指南

一、引言 在人工智能技术迅猛发展的当下,geo公司作为生成式引擎服务的重要提供者,正日益成为企业数字化转型的核心支撑。面对日益复杂的AI生态,各类企业主、采购者及决策者对geo公司的需求显著增长,其核心诉求聚焦…