Как получить данные json из firebase, а затем использовать их в angular 6, firebase вернет данные с тегом значения

Я использую функции firebase для получения данных из db, вот как я это делаю,

exports.getTopPlayers = (request,response)=> { 
    SavePlayers(function(data,err){
        if(err) console.log(err);
        response.header('Access-Control-Allow-Origin', '*');
        response.header(
            'Access-Control-Allow-Headers',
            'Origin, X-Requested-With, Content-Type, Accept'
          );
        const dbRef = admin.database().ref().child('topplayers/-LISMykRqLrVcc7xrK60');
        dbRef.on('value', snap => {
            var dbPlayer = snap.val();
            response.send(dbPlayer);
        });
    });

Затем я использую его на своем веб-сайте, построенном на angular 6

getTopPlayers() {
    return this.http.get(this.topPlayerURL);
}

Это данные в формате ниже,

{value: "[{"name":"WHYALWAYSME","tag":"9P08LYLL","rank":1,"…na":"League 8","arenaID":20,"trophyLimit":6100}}]"}

Я хочу избавиться от этого тега значения. Как я могу? Когда я пытаюсь повторить это, используя

ngFor (*ngFor="let tp of topPlayer$) it return error, Cannot loop [object,object]

Мне нужны данные в формате ниже,

[
{
name: "Leslie",
tag: "RPP89PVY",
rank: 1,
previousRank: 3,
expLevel: 13,
trophies: 6361,
donationsDelta: null,
clan: {
tag: "9CU2PQ2J",
name: "不正经的养老院",
badge: {
name: "Cherry_Blossom_04",
category: "01_Symbol",
id: 16000131,
image: "https://royaleapi.github.io/cr-api-assets/badges/Cherry_Blossom_04.png"
}
},
arena: {
name: "Grand Champion",
arena: "League 8",
arenaID: 20,
trophyLimit: 6100
}
},
0
0
836
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я нашел решение, В методе angular in component init я сделал следующее: Вызвать сервис и прочитать данные в строковом массиве,

topPlayer$: string[];
ngOnInit() {
    this.topPlayerSrvice.getTopPlayers()
      .subscribe(response => {
          let topPlayer: string[];
          topPlayer =  response.json();
          this.topPlayer$ =  JSON.parse(topPlayer['value']);
      });
  }

Другие вопросы по теме