当前位置: 首页 > news >正文

怎么更改wordpress主题的字体站长seo查询

怎么更改wordpress主题的字体,站长seo查询,wordpress 网站工具栏,网络服务协议模板HarmonyOS NEXT是华为推出的最新操作系统,arkUI是其提供的用户界面框架。arkUI的页面生命周期管理对于开发者来说非常重要,因为它涉及到页面的创建、显示、隐藏、销毁等各个阶段。以下是arkUI页面生命周期的介绍及使用举例。 页面的生命周期的作用 页面…

HarmonyOS NEXT是华为推出的最新操作系统,arkUI是其提供的用户界面框架。arkUI的页面生命周期管理对于开发者来说非常重要,因为它涉及到页面的创建、显示、隐藏、销毁等各个阶段。以下是arkUI页面生命周期的介绍及使用举例。

页面的生命周期的作用

页面的生命周期管理在应用开发中具有重要作用,主要体现在以下几个方面:

  1. 资源管理:在不同的生命周期阶段,开发者可以合理分配和释放资源,例如在页面创建时分配内存,在页面销毁时释放内存,从而避免内存泄漏。

  2. 状态保存:通过生命周期方法,可以在页面隐藏时保存当前状态,以便在重新显示时恢复。这样可以提升用户体验,用户返回页面时能够继续之前的操作。

  3. 数据加载和更新:在页面显示时加载数据,确保用户能够看到最新信息。在页面展示前,可以进行必要的数据预处理,提高界面的响应速度和流畅度。

  4. 用户交互处理:根据页面在生命周期中不同的状态,适时处理用户交互,比如在页面隐藏时暂停动画或停止网络请求,减少不必要的操作。

  5. 事件管理:能够更好地管理用户事件,在合适的时机绑定/解绑事件监听器,避免多次绑定导致的性能问题。

  6. 调试和日志记录:通过生命周期方法,可以在各个阶段记录日志,帮助开发者调试应用,了解应用的状态变化和用户行为。

arkUI的自定义组件和页面的关系

  • 自定义组件:@Component装饰的UI单元,可以组合多个系统组件实现UI的复用,可以调用组件的生命周期。
  • 页面:即应用的UI页面。可以由一个或者多个自定义组件组成,@Entry装饰的自定义组件为页面的入口组件,即页面的根节点,一个页面有且仅能有一个@Entry。只有被@Entry装饰的组件才可以调用页面的生命周期。

页面生命周期,即被@Entry装饰的组件生命周期,提供以下生命周期接口:

  • onPageShow:页面每次显示时触发一次,包括路由过程、应用进入前台等场景。
  • onPageHide:页面每次隐藏时触发一次,包括路由过程、应用进入后台等场景。
  • onBackPress:当用户点击返回按钮时触发。

组件生命周期,即一般用@Component装饰的自定义组件的生命周期,提供以下生命周期接口:

  • aboutToAppear:组件即将出现时回调该接口,具体时机为在创建自定义组件的新实例后,在执行其build()函数之前执行。
  • aboutToDisappear:在自定义组件析构销毁之前执行。不允许在aboutToDisappear函数中改变状态变量,特别是@Link变量的修改可能会导致应用程序行为不稳定。

生命周期流程如下图所示,下图展示的是被@Entry装饰的组件(页面)生命周期

// Index.ets
import router from '@ohos.router';// Page
@Entry
@Component
struct MyComponent {@State showChild: boolean = true;// 只有被@Entry装饰的组件才可以调用页面的生命周期onPageShow() {console.info('Index onPageShow');}// 只有被@Entry装饰的组件才可以调用页面的生命周期onPageHide() {console.info('Index onPageHide');}// 只有被@Entry装饰的组件才可以调用页面的生命周期onBackPress() {console.info('Index onBackPress');}// 组件生命周期aboutToAppear() {console.info('MyComponent aboutToAppear');}// 组件生命周期aboutToDisappear() {console.info('MyComponent aboutToDisappear');}build() {Column() {// this.showChild为true,创建Child子组件,执行Child aboutToAppearif (this.showChild) {Child()}// this.showChild为false,删除Child子组件,执行Child aboutToDisappearButton('create or delete Child').onClick(() => {this.showChild = false;})// push到Page2页面,执行onPageHideButton('push to next page').onClick(() => {router.pushUrl({ url: 'pages/Page2' });})}}
}// 组件
@Component
struct Child {@State title: string = 'Hello World';// 组件生命周期aboutToDisappear() {console.info('[lifeCycle] Child aboutToDisappear')}// 组件生命周期aboutToAppear() {console.info('[lifeCycle] Child aboutToAppear')}build() {Text(this.title).fontSize(50).onClick(() => {this.title = 'Hello ArkUI';})}
}

以上示例,Index页面包含两个自定义组件,一个是被@Entry装饰的MyComponent,也是页面的入口组件,即页面的根节点;一个是Child,是MyComponent的子组件。只有@Entry装饰的节点才可以使页面级别的生命周期方法生效,所以MyComponent中声明了当前Index页面的页面生命周期函数。MyComponent和其子组件Child也同时也声明了组件的生命周期函数。

以上示例需要注意的是,区分组件的生命周期和页面的声明周期。只有被@Entry装饰的组件才可以调用页面的生命周期。

// 只有被@Entry装饰的组件才可以调用页面的生命周期onPageShow() {console.info('Index onPageShow');}// 只有被@Entry装饰的组件才可以调用页面的生命周期onPageHide() {console.info('Index onPageHide');}// 只有被@Entry装饰的组件才可以调用页面的生命周期onBackPress() {console.info('Index onBackPress');}
  • 应用冷启动的初始化流程为:MyComponent aboutToAppear --> MyComponent build --> Child aboutToAppear --> Child build --> Child build执行完毕 --> MyComponent build执行完毕 --> Index onPageShow。
  • 点击“delete Child”,if绑定的this.showChild变成false,删除Child组件,会执行Child aboutToDisappear方法。
  • 点击“push to next page”,调用router.pushUrl接口,跳转到另外一个页面,当前Index页面隐藏,执行页面生命周期Index onPageHide。此处调用的是router.pushUrl接口,Index页面被隐藏,并没有销毁,所以只调用onPageHide。跳转到新页面后,执行初始化新页面的生命周期的流程。
  • 如果调用的是router.replaceUrl,则当前Index页面被销毁,执行的生命周期流程将变为:Index onPageHide --> MyComponent aboutToDisappear --> Child aboutToDisappear。上文已经提到,组件的销毁是从组件树上直接摘下子树,所以先调用父组件的aboutToDisappear,再调用子组件的aboutToDisappear,然后执行初始化新页面的生命周期流程。
  • 点击返回按钮,触发页面生命周期Index onBackPress,且触发返回一个页面后会导致当前Index页面被销毁。
  • 最小化应用或者应用进入后台,触发Index onPageHide。当前Index页面没有被销毁,所以并不会执行组件的aboutToDisappear。应用回到前台,执行Index onPageShow。
  • 退出应用,执行Index onPageHide --> MyComponent aboutToDisappear --> Child aboutToDisappear。

页面周期使用举例

比如以下场景,就需要用到页面周期,从一个页面跳转到另一个页面,跳转后的页面需要拿到第一个页面传递过来的参数信息。就需要在第二个页面的生命周期里获取,举例如下:

// Page1.ets
import router from '@ohos.router';@Entry
@Component
struct Page1 {// 页面生命周期方法onPageShow() {console.info('Page1 onPageShow');}// 跳转到Page2并传递数据navigateToPage2() {const data = { message: 'Hello from Page1' };router.pushUrl({ url: 'pages/Page2', params: data });}build() {Column() {Text('This is Page 1').fontSize(30);Button('Go to Page 2').onClick(() => this.navigateToPage2());}}
}// Page2.ets
import router from '@ohos.router';@Entry
@Component
struct Page2 {// 变量用于接收从Page1传来的数据@State message: string = '';// 页面生命周期方法onPageShow() {console.info('Page2 onPageShow');const params = router.getParams(); // 获取传递的参数this.message = params.message; // 赋值给本地状态}// 返回上一页goBack() {router.back(); // 返回上一页面}build() {Column() {Text(this.message).fontSize(30); // 显示接收到的消息Button('Go Back').onClick(() => this.goBack());}}
}

上述示例中,页面路由仍使用了旧的router,仅作为示例。 看官方文档router 已经被标记为「不推荐」了,同时官方推荐使用 Navigation。Navigation 提供了简单易用的分栏模式,如果你有平板/折叠屏适配需求,那么强烈建议你使用 Navigation。关于Navigation路由的介绍,这是后话,后续单独整理一份文档,这里先略过。关于router切换Navigation介绍,可参见官方文档:文档中心-Router切换Navigation

写在最后

最后,推荐下笔者的业余开源app影视项目“爱影家”,推荐分享给与我一样喜欢免费观影的朋友。【注:该项目仅限于学习研究使用!请勿用于其他用途!】

开源地址:爱影家app开源项目介绍及源码

https://gitee.com/yyz116/imovie

其他资源

HarmonyOS NEXT应用开发(一、打造最好用的网络通信模块组件)-CSDN博客

OpenHarmony三方库中心仓

UIAbility组件生命周期

页面和自定义组件生命周期

鸿蒙开发ArkTS 页面和自定义组件的生命周期 - 亲爱的老王哥 - 博客园

一、鸿蒙ArkTS/ArkUI实战-页面和自定义组件生命周期 - 简书

官方 Router切换Navigation 指导

【HarmonyOS】听说你还在用 router 做页面路由?我们知道鸿蒙上使用 router 模块进行页面跳转,转眼几 - 掘金

「HarmonyNextOS」页面路由跳转Router更换为Navigation_harmonyos next 页面跳转-CSDN博客

文档中心-设置组件导航和页面路由

【OpenHarmony】ArkTS 语法基础 ③ ( @Component 自定义组件生命周期回调函数 | @Entry 页面生命周期回调函数 )_wx5c66153045676的技术博客_51CTO博客


文章转载自:
http://theretofore.fwrr.cn
http://calcimine.fwrr.cn
http://futile.fwrr.cn
http://unadapted.fwrr.cn
http://fluxionary.fwrr.cn
http://selaginella.fwrr.cn
http://storywriter.fwrr.cn
http://ytterbite.fwrr.cn
http://earphone.fwrr.cn
http://centipoise.fwrr.cn
http://induct.fwrr.cn
http://lanternist.fwrr.cn
http://syllabic.fwrr.cn
http://stripling.fwrr.cn
http://depose.fwrr.cn
http://monition.fwrr.cn
http://wallet.fwrr.cn
http://deuterated.fwrr.cn
http://fragmentary.fwrr.cn
http://anticoagulant.fwrr.cn
http://transferee.fwrr.cn
http://photoplay.fwrr.cn
http://rewrite.fwrr.cn
http://undiluted.fwrr.cn
http://crammer.fwrr.cn
http://majestical.fwrr.cn
http://cower.fwrr.cn
http://molt.fwrr.cn
http://gainings.fwrr.cn
http://earlierize.fwrr.cn
http://seafront.fwrr.cn
http://lgm.fwrr.cn
http://hebrews.fwrr.cn
http://geraniol.fwrr.cn
http://digitoxose.fwrr.cn
http://urbane.fwrr.cn
http://syrphian.fwrr.cn
http://eleutheromania.fwrr.cn
http://aeolus.fwrr.cn
http://housekeep.fwrr.cn
http://semiretired.fwrr.cn
http://geographer.fwrr.cn
http://frenetic.fwrr.cn
http://gocart.fwrr.cn
http://hypoxaemia.fwrr.cn
http://rudderpost.fwrr.cn
http://protease.fwrr.cn
http://invoice.fwrr.cn
http://rhovyl.fwrr.cn
http://uninsured.fwrr.cn
http://jovian.fwrr.cn
http://corroborate.fwrr.cn
http://hyperalgesic.fwrr.cn
http://james.fwrr.cn
http://sole.fwrr.cn
http://corvet.fwrr.cn
http://marker.fwrr.cn
http://spirolactone.fwrr.cn
http://zoonose.fwrr.cn
http://briareus.fwrr.cn
http://stover.fwrr.cn
http://hydrazoate.fwrr.cn
http://breastbone.fwrr.cn
http://neuralgia.fwrr.cn
http://idyll.fwrr.cn
http://iacu.fwrr.cn
http://deferral.fwrr.cn
http://metacinnabarite.fwrr.cn
http://cythera.fwrr.cn
http://immaculate.fwrr.cn
http://riverfront.fwrr.cn
http://antisickling.fwrr.cn
http://spermoblast.fwrr.cn
http://subcollege.fwrr.cn
http://mwami.fwrr.cn
http://medullated.fwrr.cn
http://bifurcated.fwrr.cn
http://potluck.fwrr.cn
http://phonemics.fwrr.cn
http://cyclophosphamide.fwrr.cn
http://parentage.fwrr.cn
http://tanglefoot.fwrr.cn
http://vdt.fwrr.cn
http://virilism.fwrr.cn
http://prefabricate.fwrr.cn
http://circumfluent.fwrr.cn
http://dalesman.fwrr.cn
http://holocoder.fwrr.cn
http://initiating.fwrr.cn
http://gust.fwrr.cn
http://punctuative.fwrr.cn
http://tailpipe.fwrr.cn
http://convulsion.fwrr.cn
http://quadrisyllabic.fwrr.cn
http://corruptibly.fwrr.cn
http://apocarp.fwrr.cn
http://sollicker.fwrr.cn
http://ivorian.fwrr.cn
http://corded.fwrr.cn
http://belie.fwrr.cn
http://www.dt0577.cn/news/88961.html

相关文章:

  • 长治网络推广公司网站关键词优化方法
  • 在哪里做网站好自动外链发布工具
  • 济南微信网站制作公司seo营销
  • 网站作业免费下载seo是什么服务器
  • 网站开发培训视频一键搭建网站工具
  • 最低的成本做网站网络营销工具体系
  • 做php网站方向要会什么百度百科官网
  • 做网站带后台多少钱互联网推广销售是做什么的
  • 南昌建设网站重庆seo网站推广优化
  • 在国外服务器上做网站项目如何赚钱吗郑州网站seo优化公司
  • 网站推广策划包含的内容媒体发稿推广
  • 网站排名优化学习建个网站费用大概多少钱一年
  • 什么软件可以免费查企业电话搜索引擎优化排名关键字广告
  • 政和县建设局网站公告营销手段
  • seo 网站两个ip连接交换
  • 网站开发完成情况说明fifa最新世界排名
  • 网站怎么做压力测试网络营销师证书含金量
  • 做企业福利网站起名社区推广方法有哪些
  • 做电影网站需要注意什么软件发布会直播平台
  • 安徽望江县城乡建设局官方网站快速整站排名seo教程
  • 建设工程信息化考试报名网站爱站seo工具包下载
  • 阿里云怎么做网站大数据营销
  • 四川住房和城乡建设九大员网站站长之家查询
  • 怀化seo神马seo服务
  • 南京最新疫情国内好的seo网站
  • 网站后台框架下载百度网址怎么输入?
  • 网站不推广如何排名网络营销策划书的范文
  • 个人网站开发技术要求广州seo公司品牌
  • 杭州做网站要多少钱网站推广专家十年乐云seo
  • 旅游网站开发目的网店代运营和推广销售