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

C# Blazor 学习笔记(3):路由管理

文章目录

  • 前言
  • 路由管理
    • App.razor
    • 设置登录页面
      • 设置空布局

前言

我们知道使用Blazor的官方模板,我们会自动得到一个拥有侧边栏的布局页面。但是我们发现我们所有新建的页面都有侧边栏。有时候我们需要跳出这个布局,比如我要做登录页面的时候,我们就希望只显示一个完整的页面,而不显示侧边栏。

路由管理

讲到Blazor的路由管理,那么就要讲到Blazor是怎么运行的。

App.razor

在这里插入图片描述
App.razor和Vue的App.vue很像。或者说Blazor继承了React,Vue,Angluar的优点。你可以看到很多其它前端框架的知识。虽然是缝合怪,但是缝的很不错。对于开发人员来说,好用就行了。

在这里插入图片描述
我们可以看到有多级标签

  • Router:路由管理
    • Found:如果页面找得到
      • RouteView:路由布局管理
        • DefaultLayout:默认路由管理布局
      • FocusOnNavigate:设置焦点,暂时不知道有啥用
    • NotFound:如果页面找不到

其实最重要的就是这个DefaultLayout,他指向了MainLayout,我们看看MainLayout里面是什么东西

@inherits LayoutComponentBase<PageTitle>BlazorApp1</PageTitle><div class="page"><div class="sidebar"><NavMenu /></div><main><div class="top-row px-4"><a href="https://docs.microsoft.com/aspnet/" target="_blank">About</a></div><article class="content px-4">@Body</article></main>
</div>

重要的就是两个

  • @inherits LayoutComponentBase
    • 继承布局组件基类
  • @Body
    • 设置布局内容位置

设置登录页面

绕了一个大圈,终于到如何设置登录页面了。其实很简单,默认创建的都是执行默认布局。我们指定布局就可以了。
在这里插入图片描述

设置空布局

设置一个空布局

LoginLayout

@inherits LayoutComponentBase@Body

然后写一个登录页面

LoginLayout

@page "/login"
@layout LoginLayout
<h3>Login</h3>
<h3>这个是登录页面</h3>@code {}

运行成功

在这里插入图片描述

http://www.lryc.cn/news/106453.html

相关文章:

  • int[]数组转Integer[]、List、Map「结合leetcode:第414题 第三大的数、第169题 多数元素 介绍」
  • vue子传父的一种新方法:this.$emit(‘input‘, value)可实现实时向父组件传值
  • 【Web】web
  • css中的bfc是什么?
  • 【前端知识】React 基础巩固(四十四)——其他Hooks(useContext、useReducer、useCallback)
  • 华为云hcip核心知识笔记(数据库服务规划)
  • 【有趣的】关于Map的一些小测试
  • 【MATLAB第63期】基于MATLAB的改进敏感性分析方法IPCC,拥挤距离与皮尔逊系数法结合实现回归与分类预测
  • AI 绘画Stable Diffusion 研究(二)sd模型ControlNet1.1 介绍与安装
  • 接口参数设计原则
  • 网络安全防护利器:SK5代理与IP代理的技术对比
  • IDEA删除本地git仓库、创建本地git仓库、关联其他仓库并上传
  • JavaEE简单示例——在使用Tomcat的时候可能出现的一些报错
  • webrtc的线程模型
  • 数据库备份还原-mysqldump、mydumper、xtrabackup、压缩
  • 【黑马程序员前端】JavaScript入门到精通--20230801
  • 100道Java多线程面试题(上)
  • web开发中的安全和防御入门——csp (content-security-policy内容安全策略)
  • 定了!全国2023下半年软考(高级、中级、初级)报名时间汇总
  • Linux下安装配置Redis
  • 深度学习(33)——CycleGAN(2)
  • WeakMap and WeakSet(弱映射和弱集合)
  • 【Vue3基础】组件保持存活、异步加载组件
  • 在 3ds Max 中使用相机映射将静止图像转换为实时素材
  • 如何使用GIL解决Python多线程性能瓶颈
  • k8s概念-深入pod
  • Web服务器实验案例
  • 预警 项目经验BUG
  • 基于RFID技术的猪舍门读卡器
  • 亚马逊店铺的回款周期是多久?