5
respostas

Pipe - Trocar dados da tabela

Estou querendo listar alguns dados em uma tabela porém alguns campos vem do back-end com o código da informação. Por isso, eu tenho uma lista no seguinte formato : [{codigo:1, nome:"angular"}, {codigo:2, nome:"react"},]. A melhor maneira de fazer isso é usando o Pipe ? Como eu faria isso ? tentei carregar a lista no construtor do pipe porém a tabela carrega antes do pipe pegar a lista.

@Pipe({ name: 'nomeFilter'})
export class NomeFilter implements PipeTransform {

    data:any;

    constructor(private dataService:DataService){

        this.dataService .listData() .subscribe(data => {
        this.data = data;
        });
    }

    transform(codigo:any) {

        if(codigo) {
            return this.data.filter(data=> 
                data.nome.includes(codigo)
            );
        } else {
            return null;
        }

    }
5 respostas

Fala aí Rafael, beleza? Não entendi seu problema, poderia explicar com mais detalhes?

Fico no aguardo.

Entao matheus , estou listando algumas informaçõs em uma tabela, só que alguns dados necessitam de formatação

ex: trocar o codigo do produto pelo nome

123 -> Iphone

E para isso eu tenho uma lista vinda do backend informando o codigo e o respectivo nome. Minha pergunta ė : Para fazer isso eu teria que usar o pipe mesmo? E como eu faria isso ?

Fala ai Rafael, quando e porque esses dados seriam trocados?

Você está exibindo em alguma tabela?

Fico no aguardo

Seriam trocados ao carregar uma tabela porque não queria mostrar para o usuário o código do produto mas sim o nome.

Então você não precisaria do Pipe para isso, basta na tabela sua mostrar apenas o nome.

Espero ter ajudado.