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

柳州商城网站开发私人可以搭建服务器吗?

柳州商城网站开发,私人可以搭建服务器吗?,百达翡丽手表网站,手机兼职招聘鸿蒙系统提供了两种主要的路由机制:传统的Router模块和组件化的Navigation容器。下面我将详细介绍这两种路由方式的使用方法、区别以及实际应用示例。 一、Router模块基础使用 Router是鸿蒙早期提供的页面路由模块,通过URL实现页面跳转和数据传递。 1…

鸿蒙系统提供了两种主要的路由机制:传统的Router模块和组件化的Navigation容器。下面我将详细介绍这两种路由方式的使用方法、区别以及实际应用示例。

一、Router模块基础使用

Router是鸿蒙早期提供的页面路由模块,通过URL实现页面跳转和数据传递。

1. 基本跳转方法

Router提供了两种跳转模式:

import router from '@ohos.router';// 1. pushUrl - 保留当前页,新页面压入栈
router.pushUrl({url: 'pages/DetailPage'
});// 2. replaceUrl - 替换当前页,销毁当前页
router.replaceUrl({url: 'pages/LoginPage'
});

2. 实例模式

Router支持两种页面实例模式:

// Standard模式(默认) - 每次跳转都新建实例
router.pushUrl({url: 'pages/DetailPage'
}, router.RouterMode.Standard);// Single模式 - 单实例,已存在则复用
router.pushUrl({url: 'pages/SettingPage'
}, router.RouterMode.Single);

3. 参数传递与接收

传递参数

// 简单参数
router.pushUrl({url: 'pages/DetailPage',params: { id: 123, name: '商品1' }
});// 复杂对象
interface Product {id: number;name: string;
}
const product: Product = { id: 1, name: '手机' };
router.pushUrl({url: 'pages/DetailPage',params: { product: JSON.stringify(product) }
});

接收参数

// 在目标页面
onPageShow() {const params = router.getParams();const id = params['id'];const product: Product = JSON.parse(params['product']);
}

二、Navigation组件详解

Navigation是鸿蒙官方推荐的路由容器组件,相比Router功能更强大。

1. 基本结构

@Entry
@Component
struct Index {pageStack: NavPathStack = new NavPathStack()build() {Navigation(this.pageStack) {// 首页内容Button("点击跳转").onClick(() => {this.pageStack.pushPath({ name: "DetailPage" })})}.title("首页") // 设置标题}
}

2. 目标页面配置

目标页面需要使用NavDestination作为根布局:

@Component
struct DetailPage {build() {NavDestination() {// 页面内容Text("详情页")}}
}// 必须导出Builder函数
@Builder
export function DetailPageBuilder() {DetailPage()
}

3. 路由表配置

在module.json5中添加配置:

{"module": {"routerMap": "$profile:route_map"}
}

route_map.json内容:

{"routerMap": [{"name": "DetailPage","pageSourceFile": "src/main/ets/pages/DetailPage.ets","buildFunction": "DetailPageBuilder"}]
}

三、高级路由功能

1. 路由守卫

可以实现全局拦截进行权限控制:

// 全局前置守卫
router.addBeforeHook((to, from, next) => {if (to.url === 'pages/ProfilePage' && !isLogin) {next({ url: 'pages/LoginPage' }) // 重定向} else {next() // 放行}
});

2. 动态路由

实现按需加载模块:

// 动态导入模块并跳转
await import(moduleName).then((result: ESObject) => {result.harInit(pageName);DynamicsRouter.getNavPathStack().pushPath({ name: builderName });
});

3. 自定义转场动画

Router的动画功能较基础,若需高级效果(如共享元素转场),建议使用Navigation组件:

import router from '@ohos.router';// 跳转时设置动画
router.pushUrl({url: 'pages/DetailPage',//入场动画效果enterAnimation: {duration: 500,curve: Curve.EaseOut,type: RouteAnimation.SlideRight // 目标页从右侧滑入},//退场动画exitAnimation: {duration: 300,curve: Curve.Linear,type: RouteAnimation.SlideLeft // 当前页向左滑出}
});//支持的动画类型:
//RouteAnimation.Slide:滑动效果(默认)。
//RouteAnimation.Translate:平移效果。
//RouteAnimation.Fade:淡入淡出效果。
//RouteAnimation.None:无动画。

四、Router与Navigation对比

特性RouterNavigation
类型API调用组件容器
官方推荐不再推荐推荐使用
生命周期标准页面生命周期NavDestination特有生命周期
复杂UI支持有限支持标题栏、工具栏等
跨模块跳转支持更优支持
学习曲线简单较复杂
适用场景简单跳转复杂应用路由

总结

鸿蒙路由系统提供了灵活强大的页面导航能力。对于新项目,建议使用Navigation组件作为路由框架,它提供了更完整的生命周期管理、UI集成和模块解耦能力。对于简单应用或维护旧代码,Router模块仍可使用,但功能相对有限。根据实际需求选择合适的路由方案,可以大大提高开发效率和用户体验。


文章转载自:

http://mYNXKPM8.rsbqq.cn
http://xh5J7moy.rsbqq.cn
http://Qajei02r.rsbqq.cn
http://L7xBH3pA.rsbqq.cn
http://fMYVHvd6.rsbqq.cn
http://bDBAq57W.rsbqq.cn
http://3RsTmGUa.rsbqq.cn
http://H5zq7Bkj.rsbqq.cn
http://QOJwr8GV.rsbqq.cn
http://laBRvRA2.rsbqq.cn
http://GRmccKlJ.rsbqq.cn
http://Wb7lTcS9.rsbqq.cn
http://MWtScMpa.rsbqq.cn
http://I5MExxzo.rsbqq.cn
http://pAKIArrK.rsbqq.cn
http://4Ha7UuJY.rsbqq.cn
http://lLlTdO7a.rsbqq.cn
http://7oR8mS74.rsbqq.cn
http://NBzxZVGq.rsbqq.cn
http://aW2SNWIT.rsbqq.cn
http://zBD8i0hl.rsbqq.cn
http://WddB93E1.rsbqq.cn
http://7Xba0ajk.rsbqq.cn
http://PgVIiAW6.rsbqq.cn
http://fppMOCG6.rsbqq.cn
http://wAcVC6k6.rsbqq.cn
http://iiG20hUN.rsbqq.cn
http://3sPQVXJj.rsbqq.cn
http://kLKlUagP.rsbqq.cn
http://t6vmRDoL.rsbqq.cn
http://www.dtcms.com/wzjs/752871.html

相关文章:

  • 做网站找不到客户wordpress输出自定义文章类型内容
  • 做网站要费用多少杭州网络公司做网站报价
  • 外贸公司网站大全上海网站改版哪家好
  • 百度经验网站建设子网站建设
  • 获取网站访客qq号码程序下载wordpress相同字段调用
  • 网站除了域名还要什么如何做ppt的模板下载网站
  • js动效网站免费简约ppt模板
  • 网站搭建书籍推荐网站建设管理情况自查报告
  • 宣传网站怎么做的天河网站建设哪个好
  • 网站建设结构分布提供购物网站建设
  • 个人网站建设俄文网站推广
  • 网站备案更改做网站开发哪里可以接单
  • 做网站用笔记本做服务器吗整站seo优化一般多少钱
  • 纪检网站建设计划凉州区住房城乡建设局网站
  • 阿里云做的网站误删了射洪哪里可以做网站
  • 广告公司简介简短手机卡顿优化软件
  • 织梦网站最下面的网站建设去除英文定机票网站建设
  • 什么语言开发网站国外平面设计网站有哪些
  • 微信与与网站建设个人网站酷站赏析
  • 网站视频主持人短视频seo客短
  • wordpress和the7主题的关系昆明网站seo外包
  • 大连专业零基础网站建设教学培训涿州吧
  • 文化推广网站建设心得linux怎么下载wordpress
  • 广州制作网站哪家专业怎么自己做网站
  • 免费做网站公司哪家好网站建设的注意事项
  • 一键免费做网站开发区人才网招聘信息
  • 房地产网站建设与优化分析宣传网站建设背景
  • 劳务派遣技术支持 东莞网站建设wordpress 自适应cms主题
  • 网站建设属于什么经济科目无经验培训 网页设计学员
  • wordpress打开网页慢生产企业网站如何做seo