Blazor中传递数据的几种情况总结(一):通过路由传递参数
【代码】Blazor中传递数据的几种情况总结(一)
·
都是在@rendermode InteractiveServer下
通过路由传递参数:
传出页面:
<a href="@($"/{i}")">
@code{
private int i;
}
传入页面:
@page "/{Id:int}"
<p>@Id</p>
@code{
[Parameter]
public int Id { get; set; }
}
值得一提的是,设置了带有参数的路由后,就必须送出参数,不然会返回404;但也可以设置可选参数,只需要在传入页面上写:
@page "/{Id:int?}"
@code{
[Parameter]
public int? Id { get; set; }
}
这样参数就成为可选的,可以根据情况决定是否送出参数。
在路由中还可以增加查询参数(Query String)来送出字符串参数
只要在路由后面附上:
<a href="@($"/{i}?name=Alex)">
在传入页面添加:
[SupplyParameterFromQuery]
public string? Name{set;get;}
就可以把值“Alex”传送到Name,传入页面的Name和传出路由中的name,只要保持字面一致就可以,大小写可以不同。且可以传递多个参数,只要在路由中用&分割,在传入页面中按顺序设置多个属性就可以了。Query String参数都是可选的,所以在属性定义中需要加上一个?号

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)