来自外部JSON的.ts文件中的字符串

时间:2018-08-29 09:08:29

标签: javascript angular typescript ionic-framework

我在这个问题上有些迷茫。 是否可以从外部JSON将字符串放入.ts文件? 我想在IONIC InAppBrowser中显示每个JSON项目的网址。这就是为什么我要创建一个具有特定项目的变量,以便将其放入InAppBrowser中的原因。

感谢您的关注

Items.ts

import { Component } from '@angular/core';
import { NavController, NavParams } from 'ionic-angular';

//Importando servicio
import { ItemsProvider } from '../../providers/items/items';
//Importando URL desde config
import { URL_SERVICIOS } from './../../config/url.servicios';

@Component({
  selector: 'page-items-eur',
  templateUrl: 'items-eur.html',
})
export class ItemsEurPage {

  pais = {};

  imagenes = URL_SERVICIOS + "/imgs";
  itemsData:any [] = [];
  sliderValue: number = 0;
  sel: string = "";
  itemAsn: string = "";

  constructor(
    public navCtrl: NavController,
    public navParams: NavParams,
    public _creP: ItemsProvider,
  ) {
    console.log( navParams );
    this.pais = this.navParams.get("pais");

    if (this.pais == "España") {
      this._creP.cargar_items_esp()
        .subscribe(
          (respuesta)=>{
          console.log(respuesta);
          this.itemsData = respuesta["resultados"];
      } )
    }

    this.itemAsn = this.itemsData[0],["acf"],["enlace"]; //This string I want to show for each item


    console.log(this.itemAsn);

  }
}

JSON文件

{
    "resultados": [{
            "acf": {
                "name": "Item1",
                "enlace": "https://www.google.com"
            }
        },
         "acf": {
                "name": "Item2",
                "enlace": "https://www.facebook.com"
          
            }
        }
    ]
}

更新-加载ItemsProvider的JSON文件

  cargar_items_esp(){
    return this.http.get("https://mi_server.com/items_esp.json");
  }

1 个答案:

答案 0 :(得分:0)

您可以循环浏览JSON对象,并console.log()一行中的所有项目。这是指向堆栈闪电的链接:https://stackblitz.com/edit/js-w4rpzs

var json = {
    "resultados": [
        {
            "acf": {
                "name": "Item1",
                "enlace": "https://www.google.com"
            }
        },
        {
            "acf": {
                "name": "Item2",
                "enlace": "https://www.facebook.com"

            }
        }
    ]
};

json.resultados.forEach(
  (res) => {
    console.log('Name: ' + res.acf.name + ' Enlace: ' + res.acf.enlace);
  }
);