Pet*_*Bal 18 routing razor-pages blazor
我的 Blazor 应用程序中的启动页面是 Index.cshtml。我想将启动页面更改为主页,即我的 Home.cshtml。
我正在使用 vs2019,ASPNET CORE Blazor (0.9.0-preview3-19154-020)。
Blazor Serverside 在 Startup.cs 中有路由,我认为它是针对服务的,而不是针对页面的……并且保留为通过创建新的 Blazor 项目生成的。
app.UseMvc(routes =>
{
routes.MapRoute(name: "default", template: "{controller}/{action}/{id?}");
});
Run Code Online (Sandbox Code Playgroud)
客户的启动具有(由新的 Blazor 项目生成):
public void ConfigureServices(IServiceCollection services)
{
}
public void Configure(IComponentsApplicationBuilder app)
{
app.AddComponent<App>("app");
}
Run Code Online (Sandbox Code Playgroud)
我是否需要以某种方式在客户端 startup.cs 中注册路由?
index.cshtml 只有一行代码:
@page "/"
Run Code Online (Sandbox Code Playgroud)
如何将我的“启动”页面从 Index.cshtml 更改为 Home.cshtml?
我看过很多地方,都知道 Blazor 是“实验性的”。感觉就像我正在努力改变这么简单的东西。
Mik*_*ind 15
复制@page包含路由模板的指令:
@page "/"
Run Code Online (Sandbox Code Playgroud)
从Index.cshtml文件到Home.cshtml文件,然后删除Index.cshtml文件,或为其@page指令提供不同的路由模板,例如
@page "/index"
Run Code Online (Sandbox Code Playgroud)
Zeu*_*eus 13
只需将@page "/" 放在您希望成为默认页面的顶部即可。从 Index.razor 中删除 @page "/"
@page "/"
@page "/fetchdata"
Run Code Online (Sandbox Code Playgroud)
cal*_*san 10
您无需在启动时配置路由。路由仅适用于每个剃刀页面。您在 @page 上放置的内容是该 razor 页面的路由路径,例如 Index.razor 路由到根路径“/”。
@page "/"
<h1>Index Page</h1>
@code {
//Code here..
}
Run Code Online (Sandbox Code Playgroud)
对于不同的 razor 页面使用相同的路由并不是一个好主意,因此,如果您想使用 Home.razor 页面上的根路径,请确保将 Index.razor 更改为不同的路由。
如果您想要的是重定向,那么您可以在 Index.razor 上执行以下操作,而不是在www.yourdomain.com上加载您的网站,而是在www.yourdomain.com/home上加载您的网站
@page "/"
@inject NavigationManager NavManager
<h1>Index Page</h1>
@code {
protected override void OnInitialized()
{
NavManager.NavigateTo("/home");
}
}
Run Code Online (Sandbox Code Playgroud)
这假设您的 Home.razor 上也有以下路由
@page "/home"
<h1>Index Page</h1>
@code {
//Code here..
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13821 次 |
| 最近记录: |