Blazor将NavItems列表作为参数传递到NavMenu



我有正常的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
}

相关内容

  • 没有找到相关文章

最新更新