加载一些JSON对象

问题描述:

我加载一些JSON:加载一些JSON对象

[{ 
     "id": "0a4bf3b5bb5f47ece9284052389ae02f6c9dba989ca34086a30e049ee3d8eb47", 
     "name": "Celery", 
     "status": "Offline", 
     "servicecontrolled": true 
}, 
{ 
     "id": "ec9471ec001c10b9fa286e1f52e39c5dc9485a7c2cfbf55145c26242bb98ec4d", 
     "name": "Nginx", 
     "status": "Online", 
     "servicecontrolled": false 
}] 

,并显示在HTML servicecontrolled

<td> 
    <span>{{ service_rec.servicecontrolled }}</span> 
</td> 

如何只"servicecontrolled": true HTML代码中显示?

+0

显示它您可以请张贴的完整代码 – rashfmnb

编辑:

现在的问题是更精确,你可以做的是:

<td> 
    <span *ngIf="!!service_rec.servicecontrolled">"servicecontrolled": {{ service_rec.servicecontrolled | json }}</span> 
</td> 

老答案(以为你想显示“真”或“假” ): 什么:

<td> 
    <span>"servicecontrolled": {{ service_rec.servicecontrolled | json }}</span> 
</td> 

好像一招,b ut非常直接...

或者你可以写一个布尔管道,将布尔格式设置为字符串(请参阅https://angular.io/docs/ts/latest/guide/pipes.html)。

喜欢的东西:

import { Pipe, PipeTransform } from '@angular/core'; 

@Pipe({name: 'booleantostring'}) 
export class BooleanToStringPipe implements PipeTransform { 
    transform(value: boolean): string { 
    return (!!value) ? 'true' : 'false'; 
    } 
} 

然后,在你的HTML(与在@component装饰的pipes键加载的管道):

<td> 
    <span>"servicecontrolled": {{ service_rec.servicecontrolled | booleantostring }}</span> 
</td> 
+0

它不工作:( –

+0

能帮你什么是错的更明确 –

+0

呢?也是遗骸,真假都是秀,但我只会看到真值 –

你的JSON语法不正确。 它应该看起来像:

[ 
    { 
     "id": "0a4bf3b5bb5f47ece9284052389ae02f6c9dba989ca34086a30e049ee3d8eb47", 
     "name": "Celery", 
     "status": "Offline", 
     "servicecontrolled": true 
    }, 
    { 
     "id": "ec9471ec001c10b9fa286e1f52e39c5dc9485a7c2cfbf55145c26242bb98ec4d", 
     "name": "Nginx", 
     "status": "Online", 
     "servicecontrolled": false 
    } 
] 

然后你就可以用

<div *ngFor='let value of values' *ngIf='value.servicecontrolled'> 
    {{ value.name }} 
</div> 
+0

是的,我知道,因为我只把我的一部分代码,但不是全部 –

+1

@EduardArevshatyan你可能想要解决你的问题,然后 –

+0

我想我知道,你在找什么。看看我的编辑。 – Christoph