Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Acessar propriedade JSON

Flavio, boa tarde..

Estou com um problema que é o seguinte...

Estou fazendo outro projeto para treinar porem estou com um problema na hora de passar o ID na URL para fazer a busca por id.

no meu codigo ta o seguinte: HTML:

<div class="container">




        <div class="row">
           <div class="col-xs-12 col-sm-12 col-md-12 col-lg-12 col-xl-12">
            <a [routerLink]="['/cadastro']" class="btn btn-success">Novo</a>


               <table class="table table-striped table-hover table-bordered table-sm">   
                   <thead>
                       <tr>

                         <th >Id</th>
                         <th>Data</th>
                         <th>Razao Social</th>
                         <th>Cnpj</th>
                         <th>Status</th>
                         <th>Tipo</th>
                         <th>Visualizar</th>


                       </tr>
                   </thead>

                   <tbody>  
                     <tr *ngFor="let cliente of clientes">

                        <td>{{cliente.id}}</td>
                         <td>{{cliente.dataEntrada}}</td>
                         <td>{{cliente.razaoSocial}}</td>
                         <td>{{cliente.cnpj}}</td>
                         <td>{{cliente.status}}</td>
                         <td>{{cliente.tipo}}</td>



                         <a [routerLink]= "['/cadastro',cliente]" class="btn btn-info">visualizar</a>


                     </tr>
                   </tbody>
               </table>

Nesse trecho:

<a [routerLink]= "['/cadastro',cliente]" class="btn btn-info">visualizar</a>

Eu preciso acessar o cliente.id Repera q nesse trexo:

 <tr *ngFor="let cliente of clientes">

                        <td>{{cliente.id}}</td>
                         <td>{{cliente.dataEntrada}}</td>
                         <td>{{cliente.razaoSocial}}</td>
                         <td>{{cliente.cnpj}}</td>
                         <td>{{cliente.status}}</td>
                         <td>{{cliente.tipo}}</td>

Tudo funciona normal

porem quando eu tento acessar nesse trecho para pode passar o apenas o id:

<a [routerLink]= "['/cadastro',cliente.id]" class="btn btn-info">visualizar</a>

Nao retorna nada.

E quando eu tento assim :

<a [routerLink]= "['/cadastro',cliente]" class="btn btn-info">visualizar</a>

Na URL retorna:

http://localhost:3000/cadastro;id=1;razaoSocial=Elliott%20V.%20Sears;cnpj=10.235.254%2F0002-65;telefone=12451245;endereco=qualquercoisa;quantidadeCaixa=2;valor=300;chaveTef=30trf;token=12as54d21

Eu preciso mostra na URL assim:

http://localhost:3000/cadastro/1

Poderia ajudar.

1 resposta
solução!

Se você fez:

<a [routerLink]= "['/cadastro',cliente.id]" class="btn btn-info">visualizar</a>

E nada foi exibido, pode ser duas coisas:

  • Se a propriedade client.id não tem valor algum.
  • Se a rota muda para cadastro/1, por exemplo, e nada é exibido, o componente que extrai o valor pode estar errado.
  • Você verificou se existe um segmento de rota na declaração de suas rotas, por exemplo client/:clientId ou algo parecido? Se a rota não estiver preparada para lidar com segmentos você terá problemas.

Verifique os pontos que eu listei um a um primeiro.