我正在创建一个日历组件,该日历组件在给定的日期构造日历(月视图)。我已经创建了一个自定义NG-Template以传递到日历控件中,以便根据从服务调用返回的数据,可以在日历中每天注入自定义内容。这是我的代码:
<section class="calendar-container" *ngIf="inventoryService.InventoryAvailableListStream | async; let InventoryList">
<app-calendar [dayTemplate]="myCustomDayTemplate"></app-calendar>
<ng-template #myCustomDayTemplate let-day="day">
<span class="inventory-level" [ngClass]="{'no-inventory': (getValueByDay(InventoryList, day) === 0)}">
{{getValueByDay(InventoryList, day)}}
</span>
</ng-template>
</section>
我有一个部分显示,一旦我的contingroysservice流将服务器从服务器填充到一个称为" intevoryList"的变量中。在我的自定义ng-template(#MyCustomDayTemplate)中,我将" Day"变量基于App-Calendar中的处理。在我的自定义模板中,我致电GetValuebyday,该模板在给定的一天中查看intectoryList,并表达库存数量。这一切都是有效的,但是如果库存值为0。
,我需要能够更改UI的库存价值的样式我可以通过两次调用getValuebyday来实现这一目标(一旦将值呈现给UI,然后一次确定ngclass" noventory")。是否可以一次致电GetValuebyday并将答案放入变量中,然后在UI中使用该变量,并确定ngclass" No-Inventory"?
感谢您的帮助。
您可以一次调用该方法,并在下面更新ngClass
组件中的变量,
<ng-template #myCustomDayTemplate let-day="day">
<span class="inventory-level" [ngClass]="{'no-inventory': isZeroInventory}">
{{getValueByDay(InventoryList, day)}}
</span>
</ng-template>
声明一个变量
isZeroInventory : boolean = false;
该方法应包含逻辑并在下面更新上述变量,
getValueByDay(inventoryList,day){
// logics
this.isZeroInventory = true/false;
}