烟台网站建设-中国互联wordpress认证

张小明 2026/3/12 14:06:59
烟台网站建设-中国互联,wordpress认证,网站开发切换电脑版与手机版,wordpress修改主题头部图片一、背景 公司鸿蒙项目采用壳工程 功能模块拆分为独立工程的架构模式#xff0c;既实现代码解耦#xff0c;也方便多团队并行开发#xff0c;但独立工程之间无法直接引用源码#xff0c;那就要考虑如何实现 “主工程按钮点击跳转到功能工程的页面”问题#xff0c;通过以…一、背景公司鸿蒙项目采用壳工程 功能模块拆分为独立工程的架构模式既实现代码解耦也方便多团队并行开发但独立工程之间无法直接引用源码那就要考虑如何实现 “主工程按钮点击跳转到功能工程的页面”问题通过以下案例来实现这个思路步骤二、前置了解先了解几个鸿蒙的核心概念1、HAR 包鸿蒙的 “模块归档包”包含代码、资源、依赖的独立单元是跨工程依赖的唯一载体2、跨工程依赖主工程通过依赖功能工程的 HAR 包 / 本地模块间接访问其组件3、NavPathStack鸿蒙原生全局路由栈是承载所有页面包括跨工程页面的容器。三、具体流程案例lucyTest工程→loginTest 工程 login模块跨工程跳转主要分为三部分发送方lucyTest 主工程配置接收方loginTest 登录工程配置跳转逻辑实现3.1、接收方3.1.1、准备可被跳转的模块在loginTest工程内新建login模块可被其他工程依赖并提供可跳转的页面loginPage.ets目的定义跨工程跳转的目标页面组件后续通过路由映射让主工程识别。3.1.2、配置路由表在loginTest的login模块中创建route_map.json目的鸿蒙路由系统通过route_map.json识别页面的 “唯一标识name” 与 “渲染入口”是跨工程跳转的 “页面身份证”。具体使用方法可参考此文章https://blog.csdn.net/weixin_71403100/article/details/154455692?spm1001.2014.3001.5502{ routerMap: [ { name: loginPage, pageSourceFile: src/main/ets/_generated/BuilderMap.ets, buildFunction: loginPageBuilder, data: { needLogin: false } } ] }3.1.3、生成页面构建器统一页面入口在loginTest的login模块中创建BuilderMap.ets定义页面的构建函数目的将页面组件封装为Builder函数匹配route_map.json中的buildFunction让路由系统能直接调用渲染页面。备注当路由页面少时这一步可以直接放到第一步中当大型项目页面多时建议抽成一个文件在index中统一导出3.1.4、导出模块入口对外暴露能力在login 模块 index.ets 导出目标组件目的主工程依赖模块后通过index.ets统一访问模块的能力页面、方法。//路径 /loginTest/login/Index.ets export * from ./src/main/ets/_generated/BuilderMap3.1.5、将login模块打包为HAR包3.2、发送方3.2.1、引入 login 模块本地依赖 / HAR 包依赖二选一方式1:本地路径依赖工程在同一目录下1、在lucyTest的build-profile.json5中注册login模块2、在lucyTest的oh-package.json5中声明依赖方式 2HAR 包依赖将login模块的 HAR 包放入lucyTest的libs目录再在oh-package.json5中依赖执行ohpm install安装依赖主工程即可访问login模块的能力。3.2.2 初始化 login 模块动态导入 传递上下文在lucyTest的EntryAbility.ets中动态导入login模块并执行初始化传递主工程上下文3.2.3、配置全局路由栈承载跨工程页面的容器在lucyTest的跳转页面如Index.ets中创建全局唯一的 NavPathStack鸿蒙原生路由栈所有页面都需通过它跳转// lucyTest/entry/src/main/ets/pages/Index.ets Entry Component struct Index { // 全局路由栈承载主工程跨工程的页面 private globalNavStack: NavPathStack new NavPathStack(); build() { Column(){ // Navigation绑定全局路由栈页面跳转的容器 Navigation(this.globalNavStack){ // 跳转按钮 Button(跳转到login组件) .onClick((){ // 后续实现跳转逻辑 }) } .height(100%) .width(100%) } } }3.3、实现跨工程跳转逻辑在lucyTest的Index.ets按钮点击事件中调用NavPathStack.pushPathByName通过loginPage路由名称跳转目的通过route_map.json中注册的loginPage名称让路由系统找到对应的页面构建函数渲染跨工程的loginPage组件。// lucyTest/entry/src/main/ets/pages/Index.ets Button(跳转到login组件) .onClick((){ // 跳转到login模块的loginPage页面 this.globalNavStack.pushPathByName(loginPage, null, false); })四、技能总结主要使用到Navigation路由导航HAR包跨工程依赖动态导入 harInit五、会遇到的坑以下是因为粗心大意而遇到的坑总结下以免后续再犯1、主工程找不到 login 模块检查build-profile.json5/oh-package.json5的路径是否正确执行ohpm install2、跳转过去是个空白检查路由表信息的配置项是否正确检查是否绑定NavPathStack3、harInit方法未找到检查login模块的index.ets是否导出了harInit
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

商务网站建设设计结构内容下载wordpress很慢

红帽 Linux 多媒体使用全攻略 在红帽 Linux 系统中,多媒体功能的实现为用户带来了丰富的娱乐体验。下面将详细介绍如何在该系统中使用各种多媒体工具,包括播放音频和视频流、CD 音乐,以及进行 CD 刻录等操作。 1. 安装必要的插件 RealPlayer (RealAudio) 插件 :许多网络…

张小明 2026/3/5 2:29:38 网站建设

给网站做rss如何进行百度推广

当内容生产遭遇“产能焦虑”与“创意枯竭”的双重困境时,生成式AI正以肉眼可见的速度重构行业规则。2025年Q1数据显示,国内72%的内容团队已将AI工具纳入核心工作流,其中电商文案、短视频脚本、行业报告等场景的AI渗透率超85%——这一变化不仅…

张小明 2026/3/5 4:51:02 网站建设

江苏网站建设哪家快点下载网站模板

伪浮点数的原理、运算及误差分析 1. 伪浮点数基础示例 伪浮点数是一种特殊的数值表示方式,下面通过几个例子来理解。 首先,以四分之一块馅饼为例,分子是 1,分母已经是 2 的幂次方。可以用如下结构体表示: struct sFakeFloat oneFourth = {1, 2};负的移位值会改变移位…

张小明 2026/3/5 3:03:21 网站建设

做商务网站服务写作网站都有哪些ppp

LobeChat能否助眠故事?睡前放松新选择 在快节奏的现代生活中,越来越多的人面临入睡困难的问题。市面上的助眠应用层出不穷——从白噪音到冥想引导,但内容重复、缺乏互动、隐私泄露风险等问题始终存在。有没有一种方式,既能讲出千变…

张小明 2026/3/5 6:11:33 网站建设

做企业网站哪家公司专业唐山网站制作方案

Kotaemon语义相似度计算模块深度解析在构建智能对话系统时,一个核心挑战始终摆在我们面前:用户表达千变万化,而系统的意图识别却不能依赖死板的关键词匹配。比如,“网速太慢了”“家里WiFi卡得不行”“能不能快一点”,…

张小明 2026/3/5 5:23:55 网站建设

自己做网站要学什么软件福州网站制作公司

在科研的长河里,数据从来不是敌人—— 真正让人夜不能寐的,是面对海量结果却不知从何问起的茫然,是手动敲代码调参到凌晨三点的疲惫,是明明有趋势却画不出那条“对”的曲线的焦灼。 我们早已进入数据丰饶时代,却仍困在…

张小明 2026/3/5 6:12:56 网站建设