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

Recuperar dados do Firebase

No meu app, eu consgio adicionar dados ao Firebase RealTime DB, mas nao estou conseguindo de jeito nenhum recuperar os dados de lá. Já fuçei até o curso de Ionic 3 com Firebase da Udemy, mesma coisa, sempre dá erro.

Alguém pode me ajudar?

https://gist.github.com/jdalri/52a937313443594d99cc01619da0ebf9

2 respostas

tbm ocorre um erro do ngFor:

ERROR Error: Uncaught (in promise): Error: Cannot find a differ supporting object '[object Object]' of type 'object'. NgFor only supports binding to Iterables such as Arrays.
Error: Cannot find a differ supporting object '[object Object]' of type 'object'. NgFor only supports binding to Iterables such as Arrays.
    at NgForOf.ngOnChanges (VM737 vendor.js:46470)
    at checkAndUpdateDirectiveInline (VM737 vendor.js:12444)
    at checkAndUpdateNodeInline (VM737 vendor.js:13950)
    at checkAndUpdateNode (VM737 vendor.js:13893)
    at debugCheckAndUpdateNode (VM737 vendor.js:14765)
    at debugCheckDirectivesFn (VM737 vendor.js:14706)
    at Object.eval [as updateDirectives] (VM879 SolicitacoesPage.ngfactory.js:103)
    at Object.debugUpdateDirectives [as updateDirectives] (VM737 vendor.js:14691)
    at checkAndUpdateView (VM737 vendor.js:13860)
    at callViewAction (VM737 vendor.js:14210)
    at NgForOf.ngOnChanges (VM737 vendor.js:46470)
    at checkAndUpdateDirectiveInline (VM737 vendor.js:12444)
    at checkAndUpdateNodeInline (VM737 vendor.js:13950)
    at checkAndUpdateNode (VM737 vendor.js:13893)
    at debugCheckAndUpdateNode (VM737 vendor.js:14765)
    at debugCheckDirectivesFn (VM737 vendor.js:14706)
    at Object.eval [as updateDirectives] (VM879 SolicitacoesPage.ngfactory.js:103)
    at Object.debugUpdateDirectives [as updateDirectives] (VM737 vendor.js:14691)
    at checkAndUpdateView (VM737 vendor.js:13860)
    at callViewAction (VM737 vendor.js:14210)
    at c (VM736 polyfills.js:3)
    at VM736 polyfills.js:3
    at VM736 polyfills.js:3
    at t.invoke (VM736 polyfills.js:3)
    at Object.onInvoke (VM737 vendor.js:4979)
    at t.invoke (VM736 polyfills.js:3)
    at r.run (VM736 polyfills.js:3)
    at VM736 polyfills.js:3
    at t.invokeTask (VM736 polyfills.js:3)
    at Object.onInvokeTask (VM737 vendor.js:4970)
solução!

Boa noite, José! Como vai?

Error: Cannot find a differ supporting object '[object Object]' of type 'object'. NgFor only supports binding to Iterables such as Arrays.

Como o erro diz, vc está tentando iterar por um Object quando o *ngFor só suporta Iterables como Arrays. Provavelmente, ao recuperar as informações do Firebase vc está obtendo um objeto em vez de uma lista de objetos.

Para verificar se é isso mesmo, faça um console.log() dos dados obtidos do Firebase e veja como estão sendo retornados. Se o meu diagnóstico estiver correto, coloque o objeto dentro de uma lista e somente depois passe a lista para o *ngFor.

Grande abraço e bons estudos, meu aluno!