У меня есть следующий угловой компонент:
private json: JsonResponseDTO;
constructor(private dtoService: PoolDTOServiceService) {
}
ngOnInit() {
this.dtoService.setJsonResponse();
this.getPool();
}
getPool() {
this.json = this.dtoService.jsonResponse;
}
json
содержит пулы элементов, которые являются массивом. Этот должен быть отфильтрован по имени, которое вводится на входе. (Я не показываю HTML, поскольку это не имеет отношения к делу).
Я хочу иметь возможность «удалить» мои критерии поиска, поэтому первоначальный подход:
private json: JsonResponseDTO;
private filterJson: JsonResponseDTO;
constructor(private dtoService: PoolDTOServiceService) {
}
ngOnInit() {
this.dtoService.setJsonResponse();
this.getPool();
}
getPool() {
this.json = this.dtoService.jsonResponse;
this.filterJson = this.json;
}
filter(filterCriteria: String) {
this.filterJson = this.json;
this.filterJson.pools.filter((element) => element.name === filterCriteria);
}
и затем привяжите filterJson
к HTML DOM.
Есть ли более чистый способ сделать это?
Я хочу не запрашивать новый JSON каждый раз, когда отфильтрованное имя «удаляется», так как данные требуют времени для извлечения.