2016-12-11 1 views
0

Это то, что мои данные выглядит следующим образом:Angularfire2 Наблюдаемые CONCAT не работает

{ 
    "Category" : { 
    "-KVuXp30tdhR1CqmCb_X" : { 
     "name" : "Category1", 
     "parentCategoryId" : "" 
    }, 
    "-KVuY0CjGePvUo2qVcGb" : { 
     "name" : "Category2", 
     "parentCategoryId" : "" 
    }, 
    "-KW9U76wJg-4hgnMUvu2" : { 
     "name" : "Category1sub1", 
     "parentCategoryId" : "-KVuXp30tdhR1CqmCb_X" 
    }, 
    "-KYODOJXjqnRMkVSsIFs" : { 
     "name" : "Category2Sub1", 
     "parentCategoryId" : "-KVuY0CjGePvUo2qVcGb" 
    }, 
    "-KYOKdbX22UCeU2EZcYQ" : { 
     "name" : "Category1Sub3", 
     "parentCategoryId" : "-KVuXp30tdhR1CqmCb_X" 
    }, 
    "-KYOM3dV9pX0Isx-7V5C" : { 
     "name" : "Category2Sub2", 
     "parentCategoryId" : "-KVuY0CjGePvUo2qVcGb" 
    } 
} 
} 

Я хочу перечислить по основным категориям и подкатегории.

  • Категория1
  • Категория2
  • Категория1 >> Category1sub1
  • Категория2 >> Category2Sub1
  • Категория1 >> Category1Sub3
  • Категория2 >> Category2Sub2

Пример кода here (plunker).

Что я делаю неправильно. Как мне это сделать.

Спасибо.

ответ

1

AngularFire Метод списка возвращает Observabel, который никогда не заканчивается, поэтому нет смысла использовать его в concat. Если вы хотите получить только первое значение, вы должны использовать take.

Там нет db собственности на службу, поэтому

this.db.object 

выдаст ошибку (вы не видите ошибку, потому что код не был выполнен).

Посмотрите на это plunker и спросите, не ясно ли что-то.

+0

Да, я допустил ошибку. Я узнаю о новом RxJS. Другая проблема связана с [link] (http://stackoverflow.com/questions/40833704/i-want-to-calculate-the-sum-of-the-shoppingcart-at-firebase-with-angularfire2). Вы можете помочь с этим? Спасибо за помощь. –