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

锦州网站建设市场深圳机械加工厂

锦州网站建设市场,深圳机械加工厂,南京建设交易中心网站,深圳做网站-信科网络Blazor_WASM之4&#xff1a;路由 路由模板 通过 Router组件可在 Blazor 应用中路由到 Razor 组件。 Router 组件在 Blazor 应用的 App 组件中使用。App组件模板如下 <Router AppAssembly"typeof(Program).Assembly"><Found Context"routeData"…

Blazor_WASM之4:路由

路由模板

通过 Router组件可在 Blazor 应用中路由到 Razor 组件。 Router 组件在 Blazor 应用的 App 组件中使用。App组件模板如下

<Router AppAssembly="@typeof(Program).Assembly"><Found Context="routeData"><RouteView RouteData="@routeData" DefaultLayout="@typeof(MainLayout)" /></Found><NotFound><p>Sorry, there's nothing at this address.</p></NotFound>
</Router>

在运行时,RouteView组件有两个作用:

  • 从 Router 接收 RouteData(例如/test)以及所有路由参数。
  • 使用指定的组件的布局来呈现该组件,包括任何后续嵌套布局。

组件支持使用多个 @page 指令,/blazor-route和/different-blazor-route都能跳转到该界面

@page "/blazor-route"
@page "/different-blazor-route"<h1>Blazor routing</h1>

也可以将@page替换成@attribute

@page "/test"
@attribute [Route("test")]

重要:想要正确解析URL,必须在<head>中包含<base>,也就是在wwwroot中的index.html中<head>中包含<base>

<head>...<base href="/" />...
</head>

元素聚焦

切换到指定页面后,可以将UI焦点设置到指定元素。

<FocusOnNavigate RouteData="@routeData" Selector="h1" />

当 Router 组件导航到新页面时,FocusOnNavigate组件将焦点设置到页面的顶层标题 (<h1>)。

NotFound

如果找不到所请求路由的内容,则 Router组件允许应用指定自定义内容

<NotFound><h1>Sorry</h1><p>Sorry, there's nothing at this address.</p>
</NotFound>

路由参数

路由器使用相同的路由参数名称来填充组件参数,且路由参数不区分大小写。

@page "/test/{name}"<h3>Test</h3><p>传入的参数是:@Name</p>@code {[Parameter]public string? Name{ set;get; }
}

在地址栏中填写/test/哈哈哈

image-20230308102203841

但是,如果地址栏只写/test,也就是不写参数,则会出现

image-20230308102326706

改写为@page "/test/{name?}",name则变成可选参数,地址栏仍然只写/test,则会出现

image-20230308102507905

路由约束

路由约束强制在路由段和组件之间进行类型匹配,例如只允许id为int类型

@page "/user/{Id:int}"<h1>User Id: @Id</h1>@code {[Parameter]public int Id { get; set; }
}

路由约束类型

image-20230308103322593

路由约束也可以使用可选参数,比如下面的Id是必须,option是可选

@page "/user/{Id:int}/{Option:bool?}"

CatchAll路由参数

如果想把/test/a/b/c/test/后面的内容全部当做参数,则可以使用/test/{*par}来进行提取。

@page "/catch-all/{*pageRoute}"@code {[Parameter]public string? PageRoute { get; set; }
}

查询字符串

查询字符串的样式如/test?name=tom&age=18后面的内容就是查询字符串,查询字符串支持的类型有bool, DateTime, decimal, double, float, Guid, int, long, string。使用方法如下:

@page "/test"<h3>Test</h3><p>姓名:@Name</p>
<p>年龄:@Age</p>
<p>性别:@(MyProperty)</p>@code {[Parameter][SupplyParameterFromQuery]public string? Name{ set;get; }[Parameter][SupplyParameterFromQuery]public int? Age { set; get; }[Parameter][SupplyParameterFromQuery]public bool Gender { set; get; }public string MyProperty{get { return Gender?"男":"女"; }}   
}

在地址栏输入.../test?name=Tom&age=18&gender=true

image-20230308114308555

SupplyParameterFromQuery的Name属性可以指定查询参数的名字,下面是一个将查询参数放到同一个数组的案例:

@page "/test"<h3>Test</h3>
@foreach (var item in stars)
{<p>@item</p>
}@code {[Parameter][SupplyParameterFromQuery(Name ="star")]public string[]? stars { set; get; }}

在地址栏输入.../test?star=a&star=b&star=c

image-20230308115557316

http://www.yayakq.cn/news/699107/

相关文章:

  • wordpress地址和站点地址郑州快速建站公司
  • 养殖网站模版网站建设赶集网
  • 深圳做网站的公做优惠卷网站
  • 怎么做弹幕视频网站做catalog的免费网站
  • 百度新闻源网站有哪些网站开发实战asp制作视频
  • 浏览器网站网址大全广州开发区科技企业加速器
  • 毕业设计博客网站开发郑州网站建设老牌公司
  • 网站与域名花都有做网站
  • 南昌专业制作网站万网创始人张向东
  • 深圳企业网站制作维护高端建筑材料有哪些
  • 给新公司建网站个人门户网站备案流程
  • 中国轻工建设公司网站网站制作技巧017
  • 漳州市住房和城乡建设局网站一个完整的网站建设
  • 电子商务网站建设的步骤一般网站建设的合同模板
  • 思南县住房和城乡建设局网站开发公司竣工员工奖励计划
  • 设计公司的网站建设湖南做网站 都来磐石网络
  • 帝国网站管理系统如何做商城网页小游戏网站建设
  • 便宜的做网站edm营销
  • 藁城网站建设哪家好厚街网站建设报价
  • 做自己的网站服务器多少钱ps里怎么做网站
  • dedecms织梦古典艺术书画书法公司企业网站源码模板网站建设数据库类型
  • 温州网站开发流程互联网营销师怎么报名
  • 厦门人才网建筑设计招聘wordpress图片优化插件
  • 杭州市住房和城乡建设厅网站建设项目咨询公司网站
  • 温州网站建设首选龙诚互联智慧团建网站链接
  • 贵安新区建设管理信息网站施工企业项目负责人现场带班时间少于80%施工时间扣多少分
  • 网站后台生成器网站添加地图
  • 网站建设 7 24网站开发的图片
  • 做简单网站的步骤潍坊做网站维护费用
  • 哪个网站可以做视频播放器盐田网站建设