我有正常的NavMenu并添加了一个参数
[Parameter]
public List<NavItem> navItems {get, set;}
我的导航项目:
[Parameter]
public string DisplayName {get, set;}
[Parameter]
public string Href {get, set;}
因此,现在在MainLayout中,我想添加NavMenu并添加带参数的NavItems列表。
如果我创建导航项列表并分配参数,我会得到警告BL0005。
我怎样才能用正确的方法呢?(不忽略/禁用警告(
感谢
不要使用导航项列表。请改用DisplayName/HRef对(ViewModels(的列表。
Blazor组件的生命周期由Blazor管理。每次你做类似new NavItem()
的事情,你都做错了。
因此,为菜单创建一个ViewModel。
您可以将NavMenu中的List
更改为List<RenderFragment>
,然后将其定义为:
navItems.Add(@<a href="dummy.com">Test 1</a>);
并像一样使用它们
@foreach (var navItem in navItems)
{
@navItem
}