1
resposta

[Dúvida] estou buscando dados JSON passando para Array

estou buscando dados JSON passando para Array dentro da classe ele consegue listarDados porem quando chamo essa classe para fazer a listagem atraves desse array no html não tras nada alguem pode me ajudar grato sempre


    /**
     * Carrega todas as atividades do arquivo JSON
     *  
        * @return boolean
     * 
     */
    public carregaTodasAtividades() {   
        const self = this;
        let data:any
    data = self.http.get(self.env_atividades_json);
    data.subscribe(result => {
    self.arrAtividades = result;
        if(self.arrAtividades){
        console.log("array atividades carregadas do JSON",self.arrAtividades)
        return true;
        }
        //console.log("array atividades carregadas do JSON",self.arrAtividades)
        //return self.arrAtividades;
    })
        // TODO :: codigo para carregar o JSON e se funcionar deve retornar true
        //função carrega os dados post Json
     return false;


    }
  listarDados(){
      this.GameEngine.arrAtividades;

      //this.itens =this.arrAtividades;
      console.log("ITENS",this.GameEngine.arrAtividades)


    }

esses dados pretendo carregar no html no ionic

1 resposta

Olá Leandro, tudo bem?

Pelo código que você postou, parece que você está carregando os dados do JSON corretamente e armazenando-os no arrAtividades. No entanto, na função listarDados(), você está tentando acessar o arrAtividades da classe GameEngine, mas não está fazendo nada com ele. Você precisa atribuir o valor do arrAtividades a uma variável que será usada no HTML para exibir os dados.

Por exemplo, você pode criar uma variável itens na classe e atribuir o valor do arrAtividades a ela na função listarDados(). Então, no HTML, você pode usar um *ngFor para iterar sobre a variável itens e exibir os dados.

Ficaria assim:

listarDados(){
  this.itens = this.GameEngine.arrAtividades;
  console.log("ITENS", this.itens);
}

E no HTML:

<ion-list>
  <ion-item *ngFor="let item of itens">
    {{ item.propriedade }}
  </ion-item>
</ion-list>

Lembre-se de substituir propriedade pelo nome da propriedade que você quer exibir.

Espero ter ajudado e bons estudos!