Blazor 页面导航和路由设置教程


Blazor 路由通过 @page 指令注册页面、N*igationManager 实现跳转与参数处理,支持路径参数绑定、查询字符串解析、地址监听及手动权限拦截。

blazor 页面导航和路由设置教程

Blazor 的页面导航和路由靠 @page 指令和内置的 N*igationManager 配合实现,不需要额外安装路由库。核心是理解组件如何被识别为可访问页面、如何跳转、以及如何处理参数和导航状态。

页面如何变成可访问的路由

在 Blazor 中,只要在 Razor 组件顶部加上 @page 指令,它就自动注册为一个路由路径:

  • @page "/counter" → 访问 /counter 就显示这个组件
  • @page "/products/{id:int}" → 支持带整数参数的路径,如 /products/123
  • @page "/user/{name?}"{name?} 表示可选参数,/user/user/john 都匹配

所有带 @page 的组件会被 App.razor 中的 <router></router> 自动扫描并映射,无需手动配置路由表。

程序内跳转:用 N*igationManager

在组件中注入 N*igationManager,就能实现编程式导航:

  • N*igation.N*igateTo("/about") —— 跳转到指定路径(默认同步,不刷新页面)
  • N*igation.N*igateTo("/home", forceLoad: true) —— 强制浏览器刷新(用于跳转到非 Blazor 管理的页面,如静态 HTML)
  • 跳转前常需检查权限或保存状态,可在调用 N*igateTo 前加逻辑判断

注意:不要在组件首次渲染(OnInitialized)中直接跳转并同时修改状态,可能触发重复渲染;建议用 StateHasChanged() 或延迟执行确保安全。

启昌企业网站管理系统1.3 启昌企业网站管理系统1.3

注意:请将此程序放在网站根目录下运行。若没有IIS,请直接运行根目录下的 测试.exe 进行本地测试。 基本功能表基本设置:后台可修改联系方式,网站信息。管 理 员:可新增管理员。自定义导航:新增修改导航菜单、菜单排序等。单页管理:单页面新增关键词和描述等。新闻增加:新闻可设置标题、新闻分类、添加内容等。新闻管理:可分类查看新闻、修改新闻、删除新闻等。产品管理:产品增加二级分类,产品略缩图、产品

启昌企业网站管理系统1.3 2 查看详情 启昌企业网站管理系统1.3

获取和响应路由参数与查询字符串

路由参数自动绑定到组件的 public 属性(需匹配名称和类型),例如:

  • @page "/blog/{year:int}/{month:int}" 对应 public int Year { get; set; }public int Month { get; set; }
  • 查询字符串(如 ?q=blazor&sort=date)不会自动绑定,要用 N*igationManager.ToBaseRelativePath(N*igation.Uri) 解析 URL,再用 Microsoft.AspNetCore.WebUtilities.QueryHelpers.ParseQuery()

监听地址栏变化?订阅 N*igationManager.LocationChanged 事件,但记得在 Dispose 中取消订阅,避免内存泄漏。

处理导航拦截和未授权跳转

Blazor 不自带守卫(Guard)机制,但可以手动实现:

  • 在布局组件(如 MainLayout.razor)中检查用户登录状态,用 @if (!isLoggedIn) { <n*igateto></n*igateto> }
  • 对敏感页面,在 OnParametersSet 中校验权限,不满足时立即跳转:N*igation.N*igateTo("/unauthorized", replace: true)
  • 想阻止离开页面(如表单未保存),目前没有原生 beforeunload 集成,需用 JS 互操作调用 window.addEventListener('beforeunload', ...)

基本上就这些 —— Blazor 路由轻量直接,关键在于把 @pageN*igationManager 和生命周期配合好,不复杂但容易忽略细节。

以上就是Blazor 页面导航和路由设置教程的详细内容,更多请关注其它相关文章!


# js  # 浏览器  # app  # ai  # html  # 放在  # 如何推广网络营销公司  # 功能表  # 北京营销网络推广业务  # 济南网络营销推广合作  # 如何经营网店营销推广  # 优化网站沉醉云速捷开始  # 吕梁口碑好网站排名优化  # 广告推广在营销中的作用  # 广安网站建设案例  # 台州网站的优化  # 省心网站建设有哪些品牌  # 跳转到  # 不规范  # 解决办法  # 绑定  # 企业网站  # 管理系统  # 跳转  # 关键词  # gate  # 字符串解析  # microsoft  # win  # 路由 


相关栏目: 【 Google疑问12 】 【 Facebook疑问10 】 【 优化推广96088 】 【 技术知识133117 】 【 IDC资讯59369 】 【 网络运营7196 】 【 IT资讯61894


相关推荐: 感染了幽门螺杆菌一定会导致胃癌吗?蚂蚁庄园今日答案最新11.30  快手缓存清理方法  微信注销后银行卡解绑了吗_微信注销后银行卡解绑状态  Retrofit根路径POST请求:@POST("/") 的应用与解析  作业帮网页版不用下载入口 在线问老师快速答疑  PPT页面尺寸怎么修改 PPT自定义幻灯片大小与方向设置【教程】  使用Selenium在无头Chrome中交互动态菜单和复选框的策略  Python定时发送QQ消息  解决CSS容器溢出问题:使用calc()实现精确布局与边距控制  FullCalendar自定义按钮样式定制指南  mysql中外键约束如何使用_mysql FOREIGN KEY操作  在J*a中如何实现类的继承与方法重用_OOP继承方法重用技巧分享  苹果如何下载nanobanana  c++如何使用std::thread::join和detach_c++线程生命周期管理  LINUX怎么查看显卡信息_LINUX查看GPU状态  如何用Golang优化微服务间请求性能_Golang 微服务请求性能优化方法  Golang如何初始化module项目_Golang module init使用说明  动漫之家观看全集库 动漫之家免费资源网地址  鲨鱼剧场app金币获取方法  百度地图离线地图无法加载如何解决 百度地图离线地图加载优化方法  《梦想世界:长风问剑录》药师一图流分享  德邦快递会员怎么开通  百度输入法在AutoCAD中无法输入中文怎么办_百度输入法CAD输入异常解决方法  漫蛙漫画官方网站使用_漫蛙manwa网页版在线入口教程  CSS绝对定位与溢出控制:实现背景元素局部显示不触发滚动条  Animex动漫社社登录官网 Animex动漫社资源社入口直达  三星A55应用闪退排查步骤_Samsung A55稳定性优化技巧  J*aScript与CSS动画:实现平滑顺序淡入淡出效果并解决显示冲突  《荔枝fm》导出文件教程  J*aScript与HTML元素交互:图片点击事件与链接处理教程  《虎扑》取消评分记录方法  电脑视频号|直播|如何分享屏幕  《360浏览器》自动保存账号密码设置方法  Go App Engine 项目结构与包管理深度指南  以下哪一个是适应长期护理制度发展而设立的新职业  《植物大战僵尸3》火龙草作用介绍  51漫画网实时入口 51漫画网页版官方免费漫画入口  GBA模拟器手柄按键设置  照片整理的黄金法则是怎样的? 理解“收集-筛选-归档-备份”四步流程  sf漫画官网登录入口直达_sf漫画官方正版网址  抖音作品被限流怎么办 抖音内容优化与流量恢复方法  如何编写一个符合 composer 规范的 post-install-cmd 脚本?  汽水音乐在线入口 汽水音乐网页端官方页面快速打开  视频号视频怎么免费保存到相册?保存到相册需要注意什么?  CSS如何控制元素外边距_margin实现布局间隔  之了课堂app做题入口  《下一站江湖2》武器获取方法  奥克斯空调不制热啥毛病_奥克斯空调不制热原因分析及解决技巧  漫蛙manwa官网浏览入口_漫蛙漫画网页版访问链接  空腹吃苹果好吗 苹果空腹摄入指南 

 2025-12-19

了解您产品搜索量及市场趋势,制定营销计划

同行竞争及网站分析保障您的广告效果

点击免费数据支持

提交您的需求,1小时内享受我们的专业解答。

运城市盐湖区信雨科技有限公司


运城市盐湖区信雨科技有限公司

运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。

 8156699

 13765294890

 8156699@qq.com

Notice

We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the cookie policy.
You can consent to the use of such technologies by closing this notice, by interacting with any link or button outside of this notice or by continuing to browse otherwise.