angular - Angular - 每次条件发生变化时如何防止 ngIf 破坏组件
问题描述
我有这个代码:
<ng-container *ngFor="let language of languages">
<app-fields-to-translate
*ngIf="language.ID === selectedLanguage.ID"
[AttributeGroupsCollapses]="AttributeGroupsCollapses"
[AttributeGroups]="AttributeGroups"
[Attributes]="Attributes"
[categoriesCollapsed]="categoriesCollapsed"
[generalCollabsed]="generalCollabsed"
[selectedLanguage]="selectedLanguage"
(CategoriesCollapsedEmmiter)="categoriesCollapsed = $event"
(CollapseGeneralEmmiter)="generalCollabsed = $event"
(AddFieldToTranslation)="AddFieldToTranslation($event)"
(AddAttrubuteToTranslation)="AddAttributeToTranslation($event)"
>
</app-fields-to-translate>
</ng-container>
并且每次 selctedLanguage 更改 (field-to-translate) 的组件被破坏我可以阻止这个过程吗?还是有另一种方法来做这些事情?
解决方案
根据您的业务逻辑的确切作用,您可以使用[hidden]
,即
[hidden]="language.ID !== selectedLanguage.ID"
推荐阅读
- python - 如何将夹具返回的值作为参数传递给函数
- c++ - 我可以减少此 c++ 代码中的内存使用吗?
- laravel - Laravel 环境和邮件信息
- java - Android Studio 上的电子邮件和密码身份验证问题
- python - 使用 pywt 的连续 morlet 小波变换
- python - 为什么当前目录中的python脚本需要./才能用shebang执行?
- r - 用于 Shiny 应用程序的 renderPlot() 中的 if/ifelse 语句(初级)
- google-api - 如何使用 Angular dart auth_browser 隐式流检索经过 Google 身份验证的用户范围信息
- kotlin - 如何获取任何类的名称?
- clang++ - 如何禁用 Clang 警告“没有匹配常量切换条件的大小写”