《HarmonyOS应用开发基础》 课件 实操 项目2-任务7 渲染组件_第1页
《HarmonyOS应用开发基础》 课件 实操 项目2-任务7 渲染组件_第2页
《HarmonyOS应用开发基础》 课件 实操 项目2-任务7 渲染组件_第3页
《HarmonyOS应用开发基础》 课件 实操 项目2-任务7 渲染组件_第4页
《HarmonyOS应用开发基础》 课件 实操 项目2-任务7 渲染组件_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

任务7渲染组件项目2走进ArkTS声明式开发任务7渲染组件本任务实现使用条件和循环渲染控制组件的显示。任务描述任务效果图预览任务实施0102030504用条件渲染组件封装数据实体类处理数据源用循环渲染组件导入数据源06在生命周期函数中初始化数据01用条件渲染组件

修改组件MyItem的代码,在分割线组件上使用条件渲染,使用字符串的匹配函数match(),判断传入的文字不是“关于我们”时,组件中的分割线才渲染。02封装数据实体类

数据需要封装在对应的实体类中。在ets目录下新建model目录,在model目录中新建DataModel.ets文件,用于封装对应的实体类;在ets目录下新建viewmodel目录,在viewmodel目录中新建MyDataViewModel.ets文件,用于模拟数据来源。在DataModel.ets文件中编写DataModel类,并用exportdefault导出类,类内提供构造方法用于封装对象。exportdefaultclassDataModel{

imageSrc:Resource;//图片

textVal:string;//文字//构造方法

constructor(imageSrc:Resource,textVal:string)

{

this.imageSrc=imageSrc;

this.textVal=textVal;

}}03处理数据源在MyDataViewModel.ets中,导入DataModel类,编写函数initData(),并用exportdefault进行导出;将需要的数据用DataModel类的对象进行封装,再放到datas数组中;在函数的最后一行将datas数组返回。importDataModel

from'../model/DataModel';exportdefaultfunctioninitData():Array<DataModel>{

letdatas:Array<DataModel>=[

newDataModel($r("app.media.msg"),'消息中心'),

newDataModel($r("blem"),'意见反馈'),

newDataModel($r("app.media.help"),'帮助中心'),

newDataModel($r("app.media.hide"),'隐藏设备'),

newDataModel($r("app.media.account"),'账号切换'),

newDataModel($r("app.media.about"),'关于我们'),

]console.log("数据初始化完毕…")

returndatas;}04导入数据源在Index.ets的第一行,添加导入数据实体类DataModel和数据源MyDataViewModel中的初始数据的方法initData()。//导入数据实体类importDataModel

from'../model/DataModel';//导入数据源import

initData

from'../viewmodel/MyDataViewModel';05用循环渲染组件修改Index组件的代码,定义变量datas并使用数据源进行初始化,在Column组件中使用循环渲染组件,循环中的item就是数据源中的每一个DataModel对象,通过“item.变量名”进行引用对应的值。

ForEach(this.datas,(item)=>{

MyItem({image:item.imageSrc,text:item.textVal})

})06在生命周期函数中初始化数据-1修改Index的代码,在组件和页面的生命周期函数中分别进行验证数据的初始化。//datas:Array<DataModel>=initData()//初始化数据datas:Array<DataModel>;aboutToAppear(){

this.datas=initData()//初始化数据}onPageShow(){

//this.datas=initData()//初始化数据}06在生命周期函数中初始化数据-2aboutToAppear()生命周期函数是在build()函数之前执行;opPageShow()函数是在build()函数之后执行。在实际开发时,opPageShow()

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论