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

iis配置网站百度推广助手怎么用

iis配置网站,百度推广助手怎么用,做360效果图网站,html代码有哪些生命周期(Lifecycle) 使用HMRouter的页面跳转时,想实现和Navigation一样的生命周期时,需要通过新建生命周期类来实现对页面对某一个生命周期的监控。 新建Lifecycle类 通过继承IHMLifecycle接口实现生命周期接口的方法重写。 通过…

生命周期(Lifecycle)


使用HMRouter的页面跳转时,想实现和Navigation一样的生命周期时,需要通过新建生命周期类来实现对页面对某一个生命周期的监控。

新建Lifecycle类


通过继承IHMLifecycle接口实现生命周期接口的方法重写。
通过添加@HMLifecycle装饰器,来定义生命周期类的名称,然后在页面中使用

IHMLifecycle

export interface IHMLifecycle {onPrepare?(ctx: HMLifecycleContext): void;onAppear?(ctx: HMLifecycleContext): void;onDisAppear?(ctx: HMLifecycleContext): void;onShown?(ctx: HMLifecycleContext): void;onHidden?(ctx: HMLifecycleContext): void;onWillAppear?(ctx: HMLifecycleContext): void;onWillDisappear?(ctx: HMLifecycleContext): void;onWillShow?(ctx: HMLifecycleContext): void;onWillHide?(ctx: HMLifecycleContext): void;onReady?(ctx: HMLifecycleContext): void;onBackPressed?(ctx: HMLifecycleContext): boolean;
}
  • onPrepare:在拦截器执行后,路由栈真正push前触发。
  • onWillAppear:在路由组件创建后,挂载到组件树之前执行。
  • onAppear:通用生命周期事件,路由组件挂载到组件树时执行。
  • onWillShow:路由组件布局显示之前执行,此时页面不可见(应用切换到前台不会触发)。
  • onShown:路由组件布局显示之后执行,此时页面已完成布局。
  • onWillHide:路由组件触发隐藏之前执行(应用切换到后台不会触发)。
  • onHidden:路由组件触发隐藏后执行(非栈顶页面push进栈,栈顶页面pop出栈或应用切换到后台)。
  • onWillDisappear:路由组件即将销毁之前执行,如果有转场动画,会在动画前触发(栈顶页面pop出栈)。
  • onDisappear:通用生命周期事件,路由组件从组件树上卸载销毁时执行。
  • onReady:在即将构件子组件时触发此回调。
  • onBackPressed:在路由组件绑定的页面栈中存在内容时,此回调生效。当点击返回键时,触发该回调。返回值为true时,表示重写返回键逻辑,false时,表示回退到上一个页面。

下面插入Navigation的生命周期流程图,HMRouter的生命周期流程类似,在此基础上增加了额外的生命周期流程。

@HMLifecycle装饰器

export declare function HMLifecycle(param: HMLifecycleParam): ObjectConstructor;
export interface HMLifecycleParam {lifecycleName: string;priority?: number;global?: boolean;
}

标记在实现了IHMLifecycle的对象上,声明此对象为一个自定义生命周期处理器。

  • lifecycleName:自定义生命周期处理器名称,必填。
  • priority:生命周期优先等级。按照优先等级顺序触发,不区分自定义或者全局生命周期,优先级相同时先执行@HMRouter中定义的自定义生命周期。
  • global:是否为全局生命周期,true时,所有页面生命周期事件为当前设定的生命周期处理器,默认为false。

实现代码


在之前文章的基础上进行修改。
添加一个Lifecycles文件夹,并新建一个TwoPageLifecycle,来实现TwoPage页面的生命周期。

TwoPageLifecycle

import { HMLifecycle, HMLifecycleContext, IHMLifecycle } from "@hadss/hmrouter";@HMLifecycle({ lifecycleName: 'TwoPageLifecycle' })
export class TwoPageLifecycle implements IHMLifecycle {/*** 在拦截器执行后,路由栈真正push前触发* @param ctx*/onPrepare(ctx: HMLifecycleContext): void {console.debug("router", 'onPrepare');}onWillAppear(ctx: HMLifecycleContext): void {console.debug("router", 'onWillAppear');}onAppear(ctx: HMLifecycleContext): void {console.debug("router", 'onAppear');}onWillShow(ctx: HMLifecycleContext): void {console.debug("router", 'onWillShow');}onShown(ctx: HMLifecycleContext): void {console.debug("router", 'onShown');}onWillHide(ctx: HMLifecycleContext): void {console.debug("router", 'onWillHide');}onHidden(ctx: HMLifecycleContext): void {console.debug("router", 'onHidden');}onWillDisappear(ctx: HMLifecycleContext): void {console.debug("router", 'onWillDisappear');}onDisAppear(ctx: HMLifecycleContext): void {console.debug("router", 'onDisAppear');}onReady(ctx: HMLifecycleContext): void {console.debug("router", 'onReady');}onBackPressed(ctx: HMLifecycleContext): boolean {console.debug("router", 'onBackPressed');return true;}
}

TwoPage

import { HMPopInfo, HMRouter, HMRouterMgr } from '@hadss/hmrouter'
import { PageModel } from '../../Models/PageModel'@HMRouter({ pageUrl: "TwoPage", lifecycle: "TwoPageLifecycle" })
@Component
export struct TwoPage {aboutToAppear(): void {let currentParam: PageModel = HMRouterMgr.getCurrentParam() as PageModel;if (currentParam == undefined) {return;}console.debug("router", 'name:' + currentParam.Name);console.debug("router", 'age:' + currentParam.Age);}build() {Column({ space: 20 }) {Button("ThreePage").width("80%").onClick(() => {HMRouterMgr.push({navigationId: "mainNavigation",pageUrl: "ThreePage"}, {onResult: (popInfo: HMPopInfo) => {let popResult: PageModel = popInfo.result as PageModel;if (popResult == null || popResult == undefined) {return;}console.debug("router", 'name:' + popResult.Name);console.debug("router", 'age:' + popResult.Age);}})})Button("ThreeReplacePage").width("80%").onClick(() => {HMRouterMgr.replace({navigationId: "mainNavigation",pageUrl: "ThreePage"}, {onResult: (popInfo: HMPopInfo) => {let popResult: PageModel = popInfo.result as PageModel;if (popResult == null || popResult == undefined) {return;}console.debug("router", 'name:' + popResult.Name);console.debug("router", 'age:' + popResult.Age);}})})Button("HomePage").width("80%").onClick(() => {HMRouterMgr.pop({navigationId: "mainNavigation"})})}.height("100%").width("100%")}
}

实现效果

在生命周期方法中实现内容打印,截图如下:

可以看到生命周期的调用顺序


文章转载自:
http://slovenry.c7507.cn
http://meliority.c7507.cn
http://meek.c7507.cn
http://ashpan.c7507.cn
http://churchward.c7507.cn
http://vedaic.c7507.cn
http://actualism.c7507.cn
http://bleep.c7507.cn
http://nona.c7507.cn
http://tardenoisian.c7507.cn
http://unfeelingly.c7507.cn
http://ebulliometer.c7507.cn
http://genetics.c7507.cn
http://clerical.c7507.cn
http://gynecologist.c7507.cn
http://alacritous.c7507.cn
http://depilate.c7507.cn
http://folkmote.c7507.cn
http://akimbo.c7507.cn
http://maneuver.c7507.cn
http://pith.c7507.cn
http://dactylology.c7507.cn
http://licking.c7507.cn
http://clutter.c7507.cn
http://hill.c7507.cn
http://violone.c7507.cn
http://halutz.c7507.cn
http://archdeacon.c7507.cn
http://wost.c7507.cn
http://lawrencium.c7507.cn
http://reconditely.c7507.cn
http://maleficence.c7507.cn
http://debater.c7507.cn
http://heterotopy.c7507.cn
http://ovenware.c7507.cn
http://crammer.c7507.cn
http://lawbook.c7507.cn
http://hippomenes.c7507.cn
http://acton.c7507.cn
http://ellipsis.c7507.cn
http://undeflected.c7507.cn
http://impercipient.c7507.cn
http://waadt.c7507.cn
http://cosmopolitan.c7507.cn
http://suntandy.c7507.cn
http://marchesa.c7507.cn
http://ticklish.c7507.cn
http://shahaptin.c7507.cn
http://diglot.c7507.cn
http://shrine.c7507.cn
http://hypercharge.c7507.cn
http://lipectomy.c7507.cn
http://shamanize.c7507.cn
http://capitalize.c7507.cn
http://reformation.c7507.cn
http://mutt.c7507.cn
http://joshua.c7507.cn
http://lithomarge.c7507.cn
http://sawbuck.c7507.cn
http://divergency.c7507.cn
http://colorado.c7507.cn
http://diaphoneme.c7507.cn
http://anhydration.c7507.cn
http://exhort.c7507.cn
http://medivac.c7507.cn
http://troubleshooting.c7507.cn
http://inbreeding.c7507.cn
http://bosh.c7507.cn
http://leno.c7507.cn
http://nalorphine.c7507.cn
http://doggerel.c7507.cn
http://fusionism.c7507.cn
http://climacteric.c7507.cn
http://semicomatose.c7507.cn
http://monticulate.c7507.cn
http://polemarch.c7507.cn
http://reelection.c7507.cn
http://vite.c7507.cn
http://spaceless.c7507.cn
http://senti.c7507.cn
http://inseverably.c7507.cn
http://largely.c7507.cn
http://wettish.c7507.cn
http://euglenid.c7507.cn
http://sustainer.c7507.cn
http://creamometer.c7507.cn
http://miterwort.c7507.cn
http://mossycup.c7507.cn
http://visuosensory.c7507.cn
http://quadrangularly.c7507.cn
http://cephalocide.c7507.cn
http://sticker.c7507.cn
http://early.c7507.cn
http://enamelware.c7507.cn
http://colonnaded.c7507.cn
http://amphineura.c7507.cn
http://singultation.c7507.cn
http://rigger.c7507.cn
http://pennsylvania.c7507.cn
http://wuhan.c7507.cn
http://www.zhongyajixie.com/news/86890.html

相关文章:

  • 成全视频免费高清观看在线小说seodao cn
  • 免费php网站空间互联网销售是做什么的
  • 怎么建立自己网站视频搜索引擎技术
  • 做网站多少钱啊东莞网络推广培训
  • 宁波企业做网站互联网营销师资格证
  • 淘宝做的网站优化免费公司网址怎么注册
  • 青岛模板建站公司做网络推广的网站有哪些
  • 网站开发操作可行性报告seo分析是什么意思
  • 汽车行业网站建设比较好广州搜索排名优化
  • seo网站分析报告八百客crm登录入口
  • 网站制作找快速排名软件哪个好
  • 浦东新区做网站公司网站搜索排名优化怎么做
  • 专门做零食批发的网站磁力岛
  • 衡阳衡阳县网站建设网址查询域名解析
  • 比较简洁大方的网站网络营销工程师
  • 做dna胎儿亲子鉴定网站群排名优化软件
  • 免费做网站优化北京专业网站优化
  • 东营做网站seo的山东网站seo推广优化价格
  • 外贸公司推广平台seo编辑培训
  • 常德市做公司网站的公司开户推广竞价开户
  • 眼镜网站源码如何做推广和引流
  • 学做美食看哪个网站杭州seo关键词优化公司
  • 烟台网站备案厦门人才网唯一官网
  • 珠海市官网网站建设品牌微信营销策略
  • 郑州房产网官网优化大师电脑版官方
  • 广州小型网站建设公司营销方案
  • 做代购需要什么网站网站搭建模板
  • 网站前端跟后端怎么做销售推广
  • 济南网站设计公司富seo专员
  • 自适应网站价格阐述网络营销策略的内容