是否可以在 angular 组件模板中使用 let 为变量赋值?
Is it possible to assign a value to a variable with let in an angular component template?
考虑这个片段:
<div class="col-4" style="text-align: center;">
<skin-stat-circle>{{statByType('Users')?.count}}</skin-stat-circle><br>
<span>{{statByType('Users')?.label}}</span>
</div>
是否可以使用 let...
将 statByType('Users')
分配给局部模板变量,有点像在 *ngFor
中那样?
编辑
在@incaner 的帮助下解决了这个问题。太强大了,太喜欢了
<ng-template #statTemplate let-stat="stat">
<div class="col-4" *ngIf="stat">
<skin-stat-circle >{{stat.count}}</skin-stat-circle>
<br>
<span>{{stat.label}}</span>
</div>
</ng-template>
<skin-stat-group>
<div class="container">
<div class="row">
<ng-container *ngTemplateOutlet="statTemplate;context:{stat: statByType('Users')}"></ng-container>
<ng-container *ngTemplateOutlet="statTemplate;context:{stat: statByType('Projects')}"></ng-container>
<ng-container *ngTemplateOutlet="statTemplate;context:{stat: statByType('Layers')}"></ng-container>
</div>
</div>
</skin-stat-group>
您可以尝试使用 let-* 指令:
<ng-template let-variable="statByType('Users')?.count">
{{variable}}
</ng-template>
然后简单地使用模板。
如果您需要更多帮助,请阅读 Angular Docs
在@incaner 的帮助下解决了这个问题。太强大了,太喜欢了
<ng-template #statTemplate let-stat="stat">
<div class="col-4" *ngIf="stat">
<skin-stat-circle >{{stat.count}}</skin-stat-circle>
<br>
<span>{{stat.label}}</span>
</div>
</ng-template>
<skin-stat-group [title]="">
<div class="container">
<div class="row">
<ng-container *ngTemplateOutlet="statTemplate;context:{stat: statByType('Users')}"></ng-container>
<ng-container *ngTemplateOutlet="statTemplate;context:{stat: statByType('Projects')}"></ng-container>
<ng-container *ngTemplateOutlet="statTemplate;context:{stat: statByType('Layers')}"></ng-container>
</div>
</div>
</skin-stat-group>
考虑这个片段:
<div class="col-4" style="text-align: center;">
<skin-stat-circle>{{statByType('Users')?.count}}</skin-stat-circle><br>
<span>{{statByType('Users')?.label}}</span>
</div>
是否可以使用 let...
将 statByType('Users')
分配给局部模板变量,有点像在 *ngFor
中那样?
编辑
在@incaner 的帮助下解决了这个问题。太强大了,太喜欢了
<ng-template #statTemplate let-stat="stat">
<div class="col-4" *ngIf="stat">
<skin-stat-circle >{{stat.count}}</skin-stat-circle>
<br>
<span>{{stat.label}}</span>
</div>
</ng-template>
<skin-stat-group>
<div class="container">
<div class="row">
<ng-container *ngTemplateOutlet="statTemplate;context:{stat: statByType('Users')}"></ng-container>
<ng-container *ngTemplateOutlet="statTemplate;context:{stat: statByType('Projects')}"></ng-container>
<ng-container *ngTemplateOutlet="statTemplate;context:{stat: statByType('Layers')}"></ng-container>
</div>
</div>
</skin-stat-group>
您可以尝试使用 let-* 指令:
<ng-template let-variable="statByType('Users')?.count">
{{variable}}
</ng-template>
然后简单地使用模板。
如果您需要更多帮助,请阅读 Angular Docs
在@incaner 的帮助下解决了这个问题。太强大了,太喜欢了
<ng-template #statTemplate let-stat="stat">
<div class="col-4" *ngIf="stat">
<skin-stat-circle >{{stat.count}}</skin-stat-circle>
<br>
<span>{{stat.label}}</span>
</div>
</ng-template>
<skin-stat-group [title]="">
<div class="container">
<div class="row">
<ng-container *ngTemplateOutlet="statTemplate;context:{stat: statByType('Users')}"></ng-container>
<ng-container *ngTemplateOutlet="statTemplate;context:{stat: statByType('Projects')}"></ng-container>
<ng-container *ngTemplateOutlet="statTemplate;context:{stat: statByType('Layers')}"></ng-container>
</div>
</div>
</skin-stat-group>