根据元素在特定组件中的存在来渲染元素
Render element based on its presence in a specific component
我有这个可重复使用的组件:
<h4>Our viewers reviews</h4>
<ul class="list-group" style="color:black" >
<div *ngIf="userReviews">
<li class="list-group-item" *ngFor="let r of userReviews;let i=index">
<p class="font-weight-bold text-left">{{r.movie}}</p>
<div class="img-wrapper">
<img class="img-fluid" src="{{ r.poster }}" alt="{{ r.poster }}" />
</div>
<br>
<p class="font-weight-bold text-left"> {{r.review}}</p>
<br>
<span class=" font-weight-bold text-left">by </span><span class="font-italic">{{r.author}} </span>
<button style="float:right" (click)="delete()" class="btn btn-danger">Delete</button>
</li>
</ul>
</div>
我在主页组件和管理组件中渲染这个 HTML
但我只想显示这个删除按钮
<button style="float:right" (click)="delete()" class="btn btn-danger">Delete</button>
在管理页面上。在主页上删除应该是不可见的。我认为在某些解决方案中,但其中 none 看起来不错,并且会有重复的代码。
有人可以提出解决方案吗?
尝试:
在可重用组件中,执行:
@Input() showDeleteButton: boolean;
....
//HTML
<button *ngIf="showDeleteButton" style="float:right" (click)="delete()" class="btn btn-danger">Delete</button>
并在 home
组件中,为 showDeleteButton
发送 false,在 admin
组件中,为 showDeleteButton
发送 true。
我有这个可重复使用的组件:
<h4>Our viewers reviews</h4>
<ul class="list-group" style="color:black" >
<div *ngIf="userReviews">
<li class="list-group-item" *ngFor="let r of userReviews;let i=index">
<p class="font-weight-bold text-left">{{r.movie}}</p>
<div class="img-wrapper">
<img class="img-fluid" src="{{ r.poster }}" alt="{{ r.poster }}" />
</div>
<br>
<p class="font-weight-bold text-left"> {{r.review}}</p>
<br>
<span class=" font-weight-bold text-left">by </span><span class="font-italic">{{r.author}} </span>
<button style="float:right" (click)="delete()" class="btn btn-danger">Delete</button>
</li>
</ul>
</div>
我在主页组件和管理组件中渲染这个 HTML 但我只想显示这个删除按钮
<button style="float:right" (click)="delete()" class="btn btn-danger">Delete</button>
在管理页面上。在主页上删除应该是不可见的。我认为在某些解决方案中,但其中 none 看起来不错,并且会有重复的代码。
有人可以提出解决方案吗?
尝试:
在可重用组件中,执行:
@Input() showDeleteButton: boolean;
....
//HTML
<button *ngIf="showDeleteButton" style="float:right" (click)="delete()" class="btn btn-danger">Delete</button>
并在 home
组件中,为 showDeleteButton
发送 false,在 admin
组件中,为 showDeleteButton
发送 true。