2
respostas

Trazer um range de passagem em um intervalo

Boa noite, gostaria de saber como eu poderia fazer um range , tipo, todas as passagem entre o intervalo de ida e de volta. se puder explicar. grato!

2 respostas

Oii Emerson, tudo bem?

Vou te dar uma ideia de como você pode fazer isso.

Primeiramente, você precisa ter uma API que forneça os dados das passagens com os campos de data de ida e volta. Suponhamos que a API permita fazer uma requisição com parâmetros de data de ida e volta, algo assim:

GET /api/passagens?dataIda=2023-01-01&dataVolta=2023-01-10

No seu serviço Angular, você pode criar um método para buscar essas passagens. Um exemplo básico de como isso poderia ser implementado:

import { HttpClient } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { Observable } from 'rxjs';

@Injectable({
  providedIn: 'root'
})
export class PassagemService {
  private apiUrl = 'https://suaapi.com/api/passagens';

  constructor(private http: HttpClient) {}

  getPassagensPorIntervalo(dataIda: string, dataVolta: string): Observable<any> {
    return this.http.get(`${this.apiUrl}?dataIda=${dataIda}&dataVolta=${dataVolta}`);
  }
}

No seu componente, você pode chamar esse serviço passando as datas de ida e volta que o usuário selecionar, provavelmente através de algum formulário ou input. Aqui está um exemplo de como isso poderia ser feito:

Lembra de tratar os dados recebidos e exibi-los conforme necessário no seu template. Também é importante lidar com possíveis erros na requisição, como datas inválidas ou a falta de passagens disponíveis para o intervalo escolhido.

Um abraço e bons estudos.

Ola, obrigado pelo retorno, consegui fazer dessa forma e atendeu o que eu queria.

filterDataByDateRange(startDate: Date, endDate: Date): any[] { return this.agendalista.filter(item => item.datainicio >= startDate && item.datafim <= endDate

);

} obrigado

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software