当我将应用程序移动到Angular2时,我的JSON数组中的过滤器出现问题.在Angular 1.x中更容易.我'unique'在过滤器中使用,这删除所有重复.
应用:
{"app":"database_1",
"host":"my_host1",
"ip":"00.000.00.000"
},
{"app":"database_1",
"host":"my_host1",
"ip":"00.000.00.000"
},
{"app":"database_2",
"host":"my_host2",
"ip":"00.000.00.000"
},
{"app":"database_2",
"host":"my_host2",
"ip":"00.000.00.000"
}
Run Code Online (Sandbox Code Playgroud)
部分HTML代码:
<div *ngFor='#appsUnique of apps '>
<div class="row dashboard-row">
<div class="col-md-2">
<h4>{{appsUnique.app }}</h4>
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
结果是:
database_1
database_1
database_2
database_2
Run Code Online (Sandbox Code Playgroud)
我想得到结果:
database_1
database_2
Run Code Online (Sandbox Code Playgroud)
如何从数组中删除重复项?
我正在寻找Stomp.js或类似的libs.我没有找到使用angular2.rc6/final示例或lib.我怎样才能让Stomp.js重新获得别的东西呢?在我之前使用Angular 1.XI的项目中,Stomp.js使用了Sock.我被困了..
UPDATE
我试过这个示例应用程序,但没有效果.这个例子已经过时了. https://github.com/sjmf/ng2-stompjs-demo
当我为内容元素折叠时,我有问题.当我按下按钮显示所有内容都显示但不只是这个内容的一个元素.
我跟随这个示例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
Run Code Online (Sandbox Code Playgroud)
我从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
},
]
Run Code Online (Sandbox Code Playgroud)
如何只显示/隐藏一个元素?我可以为isCollapsedContent添加属性,例如:
<div [collapse]="isCollapsedContent(elem.show)">
Run Code Online (Sandbox Code Playgroud)