私はAngular2を使用して動的テーブルを作成しています。私は2つのパイプを持つangle2コンポーネントを作成しました:最初のパイプはJSONオブジェクトからのキーを取得します(完全に動作しています)。私は[object Object]
ですが、値ではありません。この質問が重複した場合は申し訳ありませんが、WEB内の他のソリューションを見つけることができませんので、この問題を解決するために助けてください。Angular2パイプを使用してJSONオブジェクト値を取得できません。
以下は私ですあなたの参照のためのコード
app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
rowData=[
{"Sno":"1","Particulars":"Test","Amount":"1000"},
{"Sno":"2","Particulars":"Sample","Amount":"10000"}
];
}
Pipe.ts
import { Pipe, PipeTransform } from '@angular/core';
@Pipe({ name: 'getjsoncolKeys' })
export class KeysPipe implements PipeTransform {
transform(value, args: string[]): any {
let keys = [];
for (var i = 0; i < value.length; i++) {
for (let key in value[i]) {
if (keys.indexOf(key) === -1) {
keys.push(key);
}
}
}
return keys;
}
}
@Pipe({ name: 'getjsonvalues' })
export class getjsonValues implements PipeTransform {
transform(value, args:string[]) : any {
let values = [];
for(var i=0; i<value.length;i++){
for (let key in value) {
values.push(value[key]);
}
}
return values;
}
}
app.component.html
<table>
<tr>
<th *ngFor='let column of rowData | getjsoncolKeys'>{{column}}</th>
</tr>
<tr>
<td *ngFor='let row of rowData | getjsonvalues'>{{row}}</td>
</tr>
</table>
getjsonvaluesパイプの値は何ですか?エラーとして取得しています –
私はObject.valuesを意味します –
最初に、私はあなたのパイプの名前を変更しました!次に、私の更新された答えを参照してください..今ギュンターのパイプを使用しています。 – mxii