为什么.map()不返回任何内容?

眼镜歪了

我正在尝试从API调用之后的状态动态加载表单,该操作已在中完成componentDidMount()API调用成功,并setState()languageList完成后被.map()调用,但该调用不返回任何选项。它什么也不返回。

  componentDidMount() {
    let languages = []
    base('Languages').select({
      view: 'Grid view'
    }).firstPage(function(err, records) {
      if (err) {console.error(err); return; }
      records.forEach(function(record) {
        let languageObject = {}
        languageObject['id'] = record.id
        languageObject['name'] = record.get('Language Name')
        languages.push(languageObject)
      })
    })
    this.setState({
      languageList: languages,
    })
  }

  render() {
    return (
      ...
      <select>
        {this.state.languageList.map((language, key) => (
          <option key={key} value={language.id}>{language.name}</option>
        ))}
      </select>
    )
  }

我已经验证了这state.languageList是一个对象数组,每个对象都有idname

我想念什么?

查理

将移至setStateAPI回调中。...当数据可用时

您正在接收数据之前调用它,因为它是异步的

base('Languages').select({
  view: 'Grid view'
}).firstPage((err, records) => {// arrow function to not block `this`
  if (err) {
    console.error(err);
    return;
  }
  records.forEach(function(record) {
    let languageObject = {}
    languageObject['id'] = record.id
    languageObject['name'] = record.get('Language Name')
    languages.push(languageObject)
  })
  // languages array has been updated here
  this.setState({
    languageList: languages,
  })

})

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么 .map 函数在反应中不返回任何内容

Mongoose.findOne不返回任何内容,为什么?

Ajax请求不返回任何内容。为什么?

为什么PIG FILTER不返回任何内容?

为什么 dask 在 CUDA 函数上不返回任何内容?

main函数不返回任何内容。为什么?

为什么scanf()总是不返回任何内容?

为什么我的内部联接查询不返回任何内容?

为什么在搜索存在的类时不返回任何内容?

为什么此处理程序不返回任何内容?

为什么python在计算后不返回任何内容?

为什么此提取请求不返回任何内容

FutureBuilder 快照数据不返回任何内容,为什么?

为什么OpenGL方法不返回任何内容?

为什么mycourses [i] .getGrade()不返回任何内容(C ++)?

为什么调用存储过程不返回任何内容?

如果javascript中的函数不返回任何内容,为什么?

为什么我的 for 循环不返回任何内容?

为什么类中的函数不返回任何内容?

为什么SQL不匹配任何内容?

为什么Swift的类型检查系统允许返回类型的函数不返回任何内容?

为什么 main() 不返回任何值?

为什么scrapy不返回任何链接?

为什么页面不返回任何xpath?

为什么查询不返回任何数据?

以root身份运行时,ls命令不返回任何内容,为什么?

为什么我的单词计数器不返回任何内容?

为什么套接字中的recv()函数不返回任何内容?

为什么“ c:forEach”循环在此jsp中不返回任何内容?