如何解决使用 Action 调用 RenderComponent 时出现 ArgumentNullException
我正在尝试使用 EventBack 参数测试自定义 Razor 组件:
@code {
[Parameter]
public EventCallback OnClick { get; set; }
}
我使用 bUnit 和 xUnit 来尝试测试 EventCallback。这是我的测试方法:
public void TestOnClickEvent()
{
void TestOnClick()
{
Assert.True(true);
}
IRenderedComponent<CSInput> component =
RenderComponent<CSInput>(
builder => builder.Add(
instanceOfCSInput => instanceOfCSInput.OnClick,TestOnClick));
component.Find("input").Click();
}
当我尝试运行测试时,我从 RenderComponent() 得到一个 ArgumentNullException,但我不知道它会是什么,因为一切都在 lambda 中。
解决方法
显然,定位功能是问题所在。我用另一个 lambda 替换了对本地函数的调用,它起作用了!
IRenderedComponent<CSInput> component =
RenderComponent<CSInput>(
builder => builder.Add(
instanceOfCSInput => instanceOfCSInput.OnClick,() => Assert.True(true)));
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。