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

O conteúdo da classe ta lá, mas quando acesso, ele me retorna null

Boa tarde pessoal. To com um probleminha. Tenho esse código

this._noticiaRequisition.listar(3)
            .then(returnAjax => {
                this._listNoticia.noticias = returnAjax;
            })
            .catch(msg => {
                console.log(msg);
            });

o this._noticiaRequisition.listar retorna um promisse, joga na lista, que é um Bind e atualiza na view. Só que quando essa lista chega na view ela ta sem os resultados

Ela fica assim no console:

ListNoticia {_noticias: Array(0)}
_noticias
:
(3) [{…}, {…}, {…}]
noticias
:
(...)
__proto__
:
Object

O array com os resultados está ali só que quando eu tento acessar( ListNoticia.noticias ) ele me retorno um array vazio. Não sei pq.

5 respostas

Meio que consegui entender... acho q por causa da promise, esses valores só chegam depois. Desculpa se entende errado ashaus. Mas então como eu faço para a view esperar a promise...

Talvez seja isso mesmo Igor. A promise só vai popular os dados quando o ajax retornar com a resposta.

Mas tipo a view ta sendo executada com a lista vazia antes da promise terminar, sendo que ela ta dentro do .then(). ahausahs

solução!

Achei ashasuash, tava procurando erro no lugar errado ahsuash. A view tava sendo executada sim, só que no começo, quando o Bind era montado... e não executava no .then() pq eu não tinha colocado a função na lista do Bind... Desculpa ahaush burrice minha

Ahahaha, essas coisas acontecem Igor, tudo bem! Problema resolvido certo?

Bons estudos!