Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Angular Visual Studio e retorno de JSON do jackson

Acontece que meu retorno do Spring é

No angular estou usando assim:

      ngOnInit() {
        this.paisService.getTodosPaises().subscribe( data => { 
          this.paises = data.lista;
        });
      };

Só que fica um erro no Visual Studio. Mas ele compila com sucesso, conforme imagem

Lista de países no html, após executar no servidor e no banco de dados. Sem erro no Spring.

    @CrossOrigin
        @GetMapping(value = "/paisRecurso/buscar", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
        public RetornoJackson buscarTodos() {

Será que tem problema ou como posso ajustar este erro no Visual Studio.

3 respostas
solução!

Boa noite, Guilherme! Como vai?

O problema é que vc está utilizando Typescript que é uma linguagem tipada! Com isso, o tipo da variável data é Object e um objeto desse tipo não tem a propriedade lista como o próprio erro está te dizendo!

Se vc disser que data é de um tipo qualquer como no exemplo a seguir deve fazer com que o Visual Studio Code pare de reclamar:

ngOnInit() {
     this.paisService.getTodosPaises().subscribe( (data: any) => { 
          this.paises = data.lista;
     });
}

Teste aí e qualquer coisa é só falar!

Obs.: Essa não seria a solução ideal! O ideal seria criar um modelo que representasse o tipo de dado que vc está recebendo em data, de modo que o Typescript pudesse te ajudar a utilizar o type checking e autocomplete. Para dar um mergulho mais profundo nessa linguagem indico os cursos de Typescript aqui da Alura com o mestre Flávio!

https://cursos.alura.com.br/course/typescript-parte1

https://cursos.alura.com.br/course/typescript-parte2

Grande abraço!

Valeu é isto mesmo.

Por nada, Guilherme!

Sempre que tiver alguma dúvida é só procurar o pessoal aqui no fórum!

Grande abraço!