据我了解,隐藏服务空警告的推荐方法如下:
[Inject] private IExampleService ExampleService { get; set; } = default!;
我想知道这是否同样适用于在代码后面使用“@ref”符号给出引用的组件,或者是否应该以不同的方式处理?
例如使用 DevExpress 组件:
<DxButton Text="Button" @ref=ExampleButton />
@code {
private DxButton ExampleButton { get; set; } = default!;
}
如果我正确理解这一点,渲染器会在渲染后填充ExampleButton属性,因此如果在
OnInitialized()
方法中使用该属性,则可能会出现空异常,因此我不确定!default
是否是正确的方法。
我希望 DevExpress 自己能有一些关于此的文档,但是我找不到任何东西。
= default!;
仍然分配空值但忽略空警告。如果你想使用它的属性,你仍然可能会遇到异常。我建议使用
private DxButton ExampleButton { get; set; } = new();
然后每个属性都会被初始化。