Blazor WASM 页面路由
Posted
技术标签:
【中文标题】Blazor WASM 页面路由【英文标题】:Blazor WASM Page Routing 【发布时间】:2021-07-17 06:14:53 【问题描述】:有没有办法通过变量来定义剃须刀组件的页面路由?我希望以这种方式完成的原因之一是,每当我需要在另一个页面上定义重定向链接时,我可以只使用该变量而不是再次对其进行硬编码。
默认情况下,当我们想将剃刀组件定义为页面时,我们会这样做
@page "/product/id"
我希望它在某种意义上是集中的,它看起来像这样
public class PageRoute
public const string ProductInfo = "/product/id";
然后我会在剃须刀组件上调用它
@page PageRoute.ProductInfo
【问题讨论】:
可以参考official doc,'page'指令需要双引号括起来的字符串。 【参考方案1】:我希望它在某种意义上是集中的,它看起来像这样 ....
不,不是开箱即用的 Blazor。 @page = "/"
被预编译成一个属性:
[Microsoft.AspNetCore.Components.RouteAttribute("/")]
public partial class Index : Microsoft.AspNetCore.Components.ComponentBase
....
这是在编译时修复的。如果你想要一个动态路由器,你需要编写自己的路由器。在 Internet 上搜索“Blazor 动态路由”和“Blazor 自定义路由”以了解更多信息。
【讨论】:
谢谢!这就是我一直在寻找的,该属性帮助我做我想做的事。干杯!以上是关于Blazor WASM 页面路由的主要内容,如果未能解决你的问题,请参考以下文章
Blazor WASM 路由发布请求到 index.html
Blazor University (22)路由 —— 定义路由
Blazor University (24)路由 —— 可选路由参数