gpt4 book ai didi

c# - 如何将 URL 输入参数值传递给 Blazor 页面?

转载 作者:行者123 更新时间:2023-12-04 00:02:05 25 4
gpt4 key购买 nike

这会将值传递给 blazor 组件

[Parameter]
public string Id { get; set; }

但是从 URL 输入参数传递一个值呢?

最佳答案

在组件中定义并使用 Parameter 属性注释的公共(public)属性用于存储从其父组件传递给子组件的 Component 参数,例如,以下代码将字符串参数从父组件传递给它的子组件子组件。

父组件.razor
<ChildComponent Title="I'm a child component" />
ChildComponent.razor

<p>@Title</p>

@code{
Public string Title { get; set; } = "Default Title";
}

或者,存储路由数据的值,例如,路由数据开始在 url https://localhost:44396/counter/123 ,如果您定义一个名为 Start 的公共(public)属性,并使用 Parameter 属性对其进行注释,则框架会自动完成:

反 Razor
    @page "/counter"
@page "/counter/{start:int}"

<h1>Counter</h1>

<p>Current count: @Start</p>

<button class="btn btn-primary" @onclick="IncrementCount">Click me</button>

@code {

[Parameter]
public int Start { get; set; }


private void IncrementCount()
{
Start++;
}
}

注意 Counter 组件的定义包含两个路由模板。第一个路由模板设置为使用 Start 属性的默认值;即值 0。但用户可以通过在 url 中提供路由参数来更改默认值,例如: https://localhost:44396/counter/123 .现在,当单击按钮时,起始值为 123,而不是 0。为了记录,第二个模板包含一个路由约束,它将应用程序限制为只能使用 int 值。

关于c# - 如何将 URL 输入参数值传递给 Blazor 页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59299196/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com