如何从一组 URL 中获取内容反应原生

哈利

我正在尝试从多个提要中获取数据并将其存储在一个数组中。

网址:

var URLS = [
  "https://www.wired.com/feed/rss",
  "http://feeds.bbci.co.uk/news/rss.xml",
  "http://www.nasa.gov/rss/dyn/breaking_news.rss"
];

我要填充的数组:

constructor() {
    super()
    this.state = {
      data: []
    }
  }

从提要中提取标题和描述的功能

extractData(text) {
    var doc = new DOMParser().parseFromString(text, 'text/xml');
    var items_array = [];
    var items = doc.getElementsByTagName('item');

    for (var i = 0; i < items.length; i++) {
      items_array.push({
        title: items[i].getElementsByTagName('title')[0].lastChild.data,
        description: items[i].getElementsByTagName('description')[0].lastChild.data,                  
      })
    }
    return items_array;
  }

获取数据的代码:

fetchData() {
    return Promise.all(
      URLS.map(url => fetch(url)
        .then(response => response.text())
        .then(responseData => {
          this.setState(
            (prevState, props) => ({
              data: [...prevState.data, this.extractData(responseData)]
            })
          );
        })
        .catch(err => console.error(err))
      )
    ).then(() => { /* do some thing */ }, err => { console.error(err) }) 
  }

问题是数据没有显示在列表中,但是如果我像下面的代码一样添加测试数据,它显示得很好: data: [...prevState.data, {title: "t1", description: "d1"}, {title: "t2", description: "d2"}]

墨索卡林

逻辑似乎工作得很好,但是您没有正确使用扩展运算符:

this.setState(
  (prevState, props) => ({
    data: [...prevState.data, ...this.extractData(responseData)]
  })
)

const data = [1,2,3,4]
const extraElements = [5,6,7,8]
const result = [...data, ...extraElements]

console.log(result)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何从一组PPTS中复制特定的幻灯片?

从一组URL派生树的Javascript

如何从一组日期列中获取最大日期值

从一组布尔中,如何返回包含数字true和数字false的元组?

如何从一组复杂的对象中获取一组唯一的属性

如何根据熊猫的多种条件从一组列中得出平均值?

JS从一组URL创建树

如何从一组可观察对象中捕获所有不同的响应?

从一组行中获取最大值

在PHP中如何从一组自定义周期中获取日期数组

如何从一组布尔值中返回一个布尔值?

SQL从一组数据中获取最新记录

我如何从一组sql表定义中快速生成scala类?

如何使用jQuery从一组iframe中获取2个动态iframe

如何从一组样本数据中绘制多个图表?

如何替换数字列表中的单个数字(从一组行)?

如何从一组网址中获取单个网址?

从一组元素中获取隐藏的元素

如何从一组元素中获得组合?

jmeter 如何从一组图像中采样 POST 请求数据

如何从一组单词中获取特定字母出现的次数

如何从一组记录中获取第一条记录 MS sql

从一组子字符串(又名构建请求 url)中管理和构建 Url/字符串

如何从一组 ID 中检索来自 Cosmos Db 的一组文档

如何在 Isabelle 中定义从一组到另一组(f:A -> B)的函数/映射?

如何从一组数据中返回空值以在 SQL 中显示

如何从一组 qt 文件中获取 .pro 文件

如何从一组 LARAVEL 子类别构建 URL?

如何按顺序从一组日期中获取年份