Dynamic 使下拉菜单动态化的问题
我一直在做一个项目,我需要创建一个动态下拉菜单。在这个项目中,我一直在使用Angular 8和bootstrap 4 html的一段代码Dynamic 使下拉菜单动态化的问题,dynamic,dropdown,angular8,Dynamic,Dropdown,Angular8,我一直在做一个项目,我需要创建一个动态下拉菜单。在这个项目中,我一直在使用Angular 8和bootstrap 4 html的一段代码 <li class="nav-item dropdown"> <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expan
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Dropdown
</a>
<div class="dropdown-menu" aria-labelledby="navbarDropdown">
<li ng-model="getOrders" ng-repeat="order in orders">
<a ng-click="getOrders()">{{orders}}</a>
//also tried {{ order.name }} - no result
</li>
<!-- <a class="dropdown-item" href="#">Action</a>
<a class="dropdown-item" href="#">Another action</a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#">Something else here</a> -->
</div>
</li>
你能指出我该怎么修吗
谢谢。你能试试下面吗
定义每个订单在组件类之外的外观
interface OrderEntity
{
id : string;
name : string;
}
在组件类中,指定orders数组将具有相同的结构
orders: OrderEntity[] = [];
使用in-getOrders尝试将数据推送到orders数组中
getOrders()
{
this.order.push({id : '1', name : 'order1'});
}
在模板上,您可以访问订单作为列表,并通过执行
let item of orders来访问每个项目
并获取其属性{{item.id}
和{{item.name}}
感谢您重播RR1112,我尝试了上述操作,但出现了一个错误:类型“number”不能分配给类型“OrderEntity[]”@bartosz-它在哪一行抱怨?如果在订单上:OrderEntity[]=[];您还可以执行以下操作:OrderEntity[];它在工件所在的第行发出抱怨-this.orders=this.getOrders();“this.orders”用红色下划线表示。我尝试从此表单orders中缩短表单:OrderEntity[]=[];对于此订单:OrderEntity[];但它仍然无法使用注释-类型“number”不可分配给类型“OrderEntity[]”。对。您不需要这样做。orders=this.getOrders();因为getOrders没有返回任何东西!它只修改(即推送项目)this.orders,this.orders可以直接在模板中使用。只需调用这个.getOrders();而不是this.orders=this.getOrders();希望这有帮助。还是同样的问题吗
interface OrderEntity
{
id : string;
name : string;
}
orders: OrderEntity[] = [];
getOrders()
{
this.order.push({id : '1', name : 'order1'});
}