【发布时间】:2020-05-31 08:44:31
【问题描述】:
我正在实现角度模板,并且正在读取 CSV 文件数据以将其显示在有组织的表格中。基于检索到的 csv 数据,我不擅长核心脚本部分。
我正在分享我的代码:
export class AppComponent implements OnInit{
title = 'temp-app';
public headers = [];
public data = {};
public strData = ''
public selectedHeader = null;
constructor(private fileSvc: FileService) {
}
ngOnInit(): void {
this.fileSvc.getHeaders().subscribe(
data => {
if (data != null && data.length > 0) {
let headers = data.split('\n');
headers = headers.filter(x => x.trim() !== '');
for (const item of headers) {
this.headers.push(item.trim());
}
this.headers=[...new Set(this.headers)];
} else {
this.headers = [];
}
}
);
Service.ts
@Injectable({
providedIn: 'root'
})
export class FileService {
constructor(private httpClient: HttpClient) {
}
public getHeaders() {
return this.httpClient.get('assets/data.csv', { responseType: 'text' });
}
}
预期
1.代码首先应该读取第1列,即“AppName”,在读取第1列的所有行之后,它应该只保留唯一值并使用这些唯一值创建一个按钮。意味着 - 如果“LDAP”在第1列中多次出现,它应该只考虑一次“LDAP”并使用它应该创建一个按钮。
2. 同样,为第 1 列的所有剩余值创建按钮。
此处提供一个相关链接供参考:
提前致谢 将来我只想在列中显示相应的值。如果我点击 OAM 则会显示 OAM 列,如果我点击 LDAP 则会显示 LDAP 列值。
【问题讨论】:
标签: javascript angular typescript export-to-csv