也可以传入字典作为组件的参数,这样就可以传递多参数了。
counter.razor
@using System.Collections.Generic
@page "/counter"
<PageTitle>测试</PageTitle>
<h1>@Message1</h1>
@code {
[Parameter]
public Dictionary<string, object> Messages{set;get;} =
new Dictionary<string, object>{
{"000", "000"}
};
public string Message1{set;get;} = "";
protected override void OnParametersSet()
{
foreach(var key in Messages.Keys)
{
if (key == "")
{
Message1 += "OnParametersSet empty";
}
else
{
Message1 += "OnParametersSet is " + key;
}
}
}
}
index.razor
@page "/"
<PageTitle>@UserName</PageTitle>
<div>
<Counter Messages=@outputMessages></Counter>
</div>
<button class="btn btn-primary">@UserName</button>
@code{
private string UserName = "小明";
public Dictionary<string, object> outputMessages{set;get;} =
new Dictionary<string, object>{
{"111", "111"},
{"222", "222"}
};
}