Angular 2:折叠多个元素
Angular 2: collapse multiple element
我在折叠内容元素时遇到问题。当我按下按钮时,显示所有内容,但不只是该内容的一个元素。
I following by this example Plunker
这是我的一部分 html:
<div *ngFor="#elem of apps">
<div class="col-md-5">
<div class="panel-heading">
<strong> {{elem.name}}</strong> on {{elem.host}}
</div
<button type="button" (click)="isCollapsedContent= !isCollapsedContent">
</div>
</div>
<div [collapse]="isCollapsedContent">
<table class="table table-hover">
<thead>
<tr class="header">
<td>Property</td>
<td>Value</td>
</tr>
</thead>
<tbody>
<tr>
<td>app</td>
<td>{{elem.app}}</td>
<td>name</td>
<td>{{elem.name}}</td>
<td>host</td>
<td>{{elem.host}}</td>
</tr>
</tbody>
</table>
</div
然后我从 API 向我的 JSON 添加了额外的布尔值 属性,称为 show default set false。
[
{"app":"database_1",
"host":"my_host1",
"name":"name1",
"show": false
},
{"app":"database_2",
"host":"my_host2",
"name":"name2",
"show": false
},
{"app":"database_3",
"host":"my_host3",
"name":"name3",
"show": false
},
]
如何才能show/hide只有一个元素?我可以将 属性 添加到 isCollapsedContent 例如:
<div [collapse]="isCollapsedContent(elem.show)">
使用 ngIf 测试 elem.show 是否为真。
<div *ngFor="#elem of apps">
<div class="col-md-5">
<div class="panel-heading">
<strong> {{elem.name}}</strong> on {{elem.host}}
</div>
<button type="button" (click)="elem.show = !elem.show"></button>
</div>
<table class="table table-hover" *ngIf="elem.show">
<thead>
<td>app</td>
<td>Name</td>
<td>Host</td>
</thead>
<tbody>
<tr>
<td >{{elem.app}}</td>
<td >{{elem.name}}</td>
<td >{{elem.host}}</td>
</tr>
</tbody>
</table>
</div>
我在折叠内容元素时遇到问题。当我按下按钮时,显示所有内容,但不只是该内容的一个元素。
I following by this example Plunker
这是我的一部分 html:
<div *ngFor="#elem of apps">
<div class="col-md-5">
<div class="panel-heading">
<strong> {{elem.name}}</strong> on {{elem.host}}
</div
<button type="button" (click)="isCollapsedContent= !isCollapsedContent">
</div>
</div>
<div [collapse]="isCollapsedContent">
<table class="table table-hover">
<thead>
<tr class="header">
<td>Property</td>
<td>Value</td>
</tr>
</thead>
<tbody>
<tr>
<td>app</td>
<td>{{elem.app}}</td>
<td>name</td>
<td>{{elem.name}}</td>
<td>host</td>
<td>{{elem.host}}</td>
</tr>
</tbody>
</table>
</div
然后我从 API 向我的 JSON 添加了额外的布尔值 属性,称为 show default set false。
[
{"app":"database_1",
"host":"my_host1",
"name":"name1",
"show": false
},
{"app":"database_2",
"host":"my_host2",
"name":"name2",
"show": false
},
{"app":"database_3",
"host":"my_host3",
"name":"name3",
"show": false
},
]
如何才能show/hide只有一个元素?我可以将 属性 添加到 isCollapsedContent 例如:
<div [collapse]="isCollapsedContent(elem.show)">
使用 ngIf 测试 elem.show 是否为真。
<div *ngFor="#elem of apps">
<div class="col-md-5">
<div class="panel-heading">
<strong> {{elem.name}}</strong> on {{elem.host}}
</div>
<button type="button" (click)="elem.show = !elem.show"></button>
</div>
<table class="table table-hover" *ngIf="elem.show">
<thead>
<td>app</td>
<td>Name</td>
<td>Host</td>
</thead>
<tbody>
<tr>
<td >{{elem.app}}</td>
<td >{{elem.name}}</td>
<td >{{elem.host}}</td>
</tr>
</tbody>
</table>
</div>