razor - 在 Blazor 组件的嵌套参数中传递值
问题描述
如何在嵌套参数中传递值。假设我有一个名为 mycomponent 的自定义控件
我的组件.Razor
<label>
</label>
@code
{
[Parameter]
public TestBase Test { get; set; } = new TestBase();
}
测试基类
public class TestBase
{
[Parameter]
public string Cap { get; set; }
[Parameter]
public string Cap5 { get; set; }="hai"
[Parameter]
public string Cap2 { get; set; }
[Parameter]
public string Cap3 { get; set; }
}
我的页面
<mycomponent Test.Cap="my value">
</mycomponent>
Test.Cap="我的价值"不起作用
在嵌套参数中传递值的正确方法是什么
解决方案
您应该传递TestBase
into MyComponent
,而不是尝试设置TestBase
in的值MyComponent
。Test
为in设置默认值MyComponent
仅涵盖未提供 Parameter 的情况。
<mycomponent Test="MyTest">
</mycomponent>
@code {
private TestBase MyTest = new TestBase() {Cap = "Test Value"};
SomeButtonClick Event()
{
MyTest.Value = "Another Value";
}
}
我建议您阅读有关组件的信息 -这是一个好的开始或MS Docs。
更新
你的问题的直接答案是:不,你不能做你想做的事。
推荐阅读
- python - 如何简化python中的两个嵌套循环
- python - 带有机票的 Python 抓取网站
- ruby-on-rails - 无限循环,这是什么原因造成的?
- c# - 使用 Physics2D.OverlapArea 时 Unity 总是出错
- angular - ngx-fullpage - 如何访问 OnLeave 中的角度变量?
- python - Python/Django 和服务作为类
- reactjs - 我如何使用变量而不是状态运行我的计算应用程序
- python - 在 python 中为属性定义 __getitem__ 和 __setitem__
- python - 如何从列 B 的字符串中删除列 A 中的字符串
- java - 圆形图标未调整大小以适合屏幕