鸿蒙开发05评论案例分析


前言

每个模块学习完,也应相对做个案例来巩固学习内容。做完开发案例后,也应及时总结分析来进一步加深对功能模块的认识。以下则是对评论案例的开发过程分析。


一、组件拆解

将评论案例的页面进行分析,拆解成一个一个组件。在项目中新建对应的组件文件,然后进行页面编写,完成后导出子组件,让父组件调用使用。
在这里插入图片描述

二、数据准备

在models文件夹下,编写需要的数据,确定数据字段。当前案例只是个静态案列,所以没有网络请求,并将静态数据填充到页面中。

export interface ReplyItem{
  avatar: ResourceStr //头像
  author: string //作者
  id: number //评论的id
  content: string //评论内容
  time: string //发表时间
  area: string //地区
  likeNum: number //点赞数量
  likeFlag: boolean | null //当前用户是否点赞
}

export class ReplyItemModel implements ReplyItem{
  id: number = 0
  avatar: string | Resource = ''
  author: string = ''
  content: string = ''
  time: string = ''
  area: string = ''
  likeNum: number = 0
  likeFlag: boolean | null = null

  constructor(model:ReplyItem) {
    this.id = model.id
    this.avatar = model.avatar
    this.author = model.author
    this.content = model.content
    this.time = model.time
    this.area = model.area
    this.likeNum = model.likeNum
    this.likeFlag = model.likeFlag
  }
}

三、组件通信

在父组件中使用子组件后,会出现组件通信的情况。数据是在父组件中声明,子组件要想改变父组件中的数据,就需要子组件调用父组件中的函数。

3.1 参数传递

父组件传递参数给子组件。如果传递参数是简单类型,就是值传递,修改子组件中的值不影响父组件,修改父组件不影响子组件的值。如果传递参数是复杂类型,就是引用传递,修改子组件或父组件都会影响值变化。

3.2函数传递

子组件定义函数类型,父组件传递函数给子组件。子组件可以通过函数直接操作父组件中的数值。

3.3 注意事项

@State修饰符修饰的属性参数,只会监测到复杂参数的第一层或第二层参数改变时,才会触发UI改变。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值