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

阜阳做网站的网络公司专业群建设网站

阜阳做网站的网络公司,专业群建设网站,四川建设网地址在哪,网页代理访问经常用安卓思维考虑问题#xff0c;用习惯了Router方式跳转#xff0c;但是官方推荐用 navigation#xff0c;当然它有它的有点#xff0c; 也有小瑕疵#xff0c;用了api11 后 发现 navigation路由跳转 #xff0c;只要被它包裹的跳转到下页面的#xff0c;有些生命周期…经常用安卓思维考虑问题用习惯了Router方式跳转但是官方推荐用 navigation当然它有它的有点 也有小瑕疵用了api11 后 发现 navigation路由跳转 只要被它包裹的跳转到下页面的有些生命周期是拿不到的比如onShowonHidden等 估计小伙伴们也遇到了。庆幸的是api12 更新了上面可以了哈下面是以前的和现在的实例代码对比就知道了哈 以前 BuilderpageMap(name: string, param: object) {NavDestination() {// 根据模块名获取WrappedBuilder对象通过builder接口创建页面DfRouter.getBuilder(name).builder(param);}.hideTitleBar(true)}build() {Navigation(this.navPathStack) {Row() {Column() {Text(this.message).fontSize(50).fontWeight(FontWeight.Bold)}.width(100%)}.height(100%)}.hideTitleBar(true).navBarWidth(50%).navDestination(this.pageMap).mode(NavigationMode.Auto)} } export class DfRouter {....省略代码/*** param builderName* param builder*/public static getBuilder(builderName: string): WrappedBuilder[object] {let builder DfRouter.builderMap.get(builderName);return builder as WrappedBuilder[object];}....省略代码 } 上面代码  根据模块名获取WrappedBuilder对象通过builder接口创建页面       DfRouter.getBuilder(name).builder(param)   方法是返回了个一个WrapeedBudilder 注册页面路由原来是这样的 export default class DfAbilityStage extends AbilityStage{onCreate(): void {GlobalContext.getContext().setObject(appContext, this.context.getApplicationContext());this.initRouter();}/*** 将entry中所有页面一次性注册进来*/initRouter() {let navPathStack: NavPathStack new NavPathStack()GlobalContext.getContext().setObject(entryPageStack, navPathStack);DfRouter.createNavPathStack(navPathStack);// 加载页面import(./pages/AdPage);import(./pages/HomePage);import(./pages/TestAPage);import(./webContainer/pages/WebPage);}} static readonly PAGE_AD: RouterInfo new RouterInfo(entry, AdPage);static readonly PAGE_TEST: RouterInfo new RouterInfo(entry, TestPage); DfRouter.registerRouterPage(RouterInfo.PAGE_WEB, wrapBuilder(getWebPage)); 而下面api12 更新了变成了让人舒服的 理想状态同时哪些生命周期也有了 // 该示例演示NavDestination的生命周期时序。 Builder export function PageOneBuilder(name: string, param: Object) {PageOneComponent() }Component struct PageOneComponent {private stack: NavPathStack | null null;State eventStr: string ;build() {NavDestination() {Column() {Text(event: this.eventStr)Button(pushPath, { stateEffect: true, type: ButtonType.Capsule }).width(80%).height(40).margin(20).onClick(() {if (this.stack) {this.stack.pushPath({name: pageOne});}})Button(pop, { stateEffect: true, type: ButtonType.Capsule }).width(80%).height(40).margin(20).onClick(() {this.stack?.pop()})}.width(100%).height(100%)}.title(pageOne).onAppear(() { this.eventStr onAppear; }).onDisAppear(() { this.eventStr onDisAppear; }).onShown(() { this.eventStr onShown; }).onHidden(() { this.eventStr onHidden; }).onWillAppear(() { this.eventStr onWillAppear; }).onWillDisappear(() { this.eventStr onWillDisappear; }).onWillShow(() { this.eventStr onWillShow; }).onWillHide(() { this.eventStr onWillHide; })// onReady会在onAppear之前调用.onReady((ctx: NavDestinationContext) {try {this.eventStr onReady;this.stack ctx.pathStack;} catch (e) {console.log(testTag onReady catch exception: ${JSON.stringify(e)})}})} }Entry Component struct NavigationExample3 {private stack : NavPathStack new NavPathStack();build() {Navigation(this.stack) {Stack({alignContent: Alignment.Center}) {Button(pushPath, { stateEffect: true, type: ButtonType.Capsule }).width(80%).height(40).margin(20).onClick(() {this.stack.pushPath({ name: pageOne })})}.width(100%).height(100%)}.width(100%).height(100%).title(Navigation)} } 注册路由方式也改变了 // 工程配置文件module.json5中配置 {routerMap: $profile:route_map} // route_map.json {routerMap: [{name: pageOne,pageSourceFile: src/main/ets/pages/Index.ets,buildFunction: PageOneBuilder,data: {description: this is pageOne}} ,{name: /modules/scan,pageSourceFile: src/main/ets/pages/scan/ScanViewPage.ets,buildFunction: getScanPage,data: {description: this is pageOne}},] } 版本api12 加了配置文件的映射表不再是动态的了 是不是看着舒服多了详细内容看api12 文档哈感觉有用记得点个赞感谢了!!
http://www.dnsts.com.cn/news/52717.html

相关文章:

  • 小型的企业网站中国电子工程师网
  • 毕业设计做网站答辩凡科网站产品导航怎么做
  • 做网站上的在线支付怎么做中国机械工业网
  • 网站建设程序做哪些网络规划设计师资料
  • 深圳专业网站设计公司地址北京做网站好的
  • 产品展示网站源码短视频网站平台怎么做的
  • 做网站要有策划么网站做加qq群链接地址
  • 北京网站建设公司报价外贸软件
  • 优质网站有哪些注册公司代理费用标准
  • 京建站公司网站界面优化
  • 个人网站主页设计模板太原做网站公司哪家好
  • 替老外做网站网站做链接的意义是什么意思
  • 网站搭建设计范文wordpress模板在线编辑
  • h5网站源码织梦 商城网站
  • 吉利汽车网站开发环境分析wordpress搬家插件
  • 嘉定装饰装修网站下载源码的网站
  • 青岛网站建设东橙品牌设计20元备案域名
  • 阿里云服务器wordpress建站教程免费ps模板下载网站
  • 网站建设 长安镇网站无缝背景
  • 扁平化蓝色网站淘宝客商品推广网站建设
  • 茌平网站建设上海高端网站建设服务公
  • 网站系统流程图WordPress文章模板修改
  • 无法打开建设银行企业网站开发公司交房流程及注意事项
  • 重庆南岸营销型网站建设公司推荐网络建设公司有哪些
  • 宁夏网站设计联系电话厦门城乡住房建设厅网站
  • 站长素材音效wordpress翻译软件
  • 广州哪里有做公司网站 什么价wordpress 摘要字数
  • 做网站的带宽工业设计公司怎么赚钱
  • 住房城乡建设局网站首页工作表
  • 编程猫官方网站太原模板建站系统