当前位置: 首页 > 知识库问答 >
问题:

如何在React Native中使用函数渲染组件

丌官晔
2023-03-14

嗨,我是新来的反应本机和尝试渲染组件调用一个函数内渲染,但它似乎不工作。

我的职能:

renderData = () => {
    this.state.data.map(x => {
      return (
         <View>
           <Text> {x.data.title} </Text>
         </View>
       )
    });
  };

如果我这样做,效果会更好:

  render() {

    return (
      <SafeAreaView style={styles.container}>
        <Text style={styles.text}>Enter Username</Text>
        {this.state.data.map(x => {
          return <Text style={styles.bodyText}> {x.data.title} </Text>;
        })}
      </SafeAreaView>
    );
  }
}

但不是这个:

  render() {

    return (
      <SafeAreaView style={styles.container}>
        <Text style={styles.text}>Enter Username</Text>
        {this.renderData()}
      </SafeAreaView>
    );
   }
  }

我不明白为什么第二个代码不起作用

共有1个答案

松烨烨
2023-03-14

这是因为您没有从renderData返回任何要实际渲染的内容。添加返回语句:

return this.state.data.map(x => {
  return (
     <View>
       <Text> {x.data.title} </Text>
     </View>
   )
});

实际上,您必须返回新的映射元素,以便在{this.renderData()}中调用它时获得新元素。或者,由于当前没有返回值,所以您正在执行{未定义}

 类似资料:
  • 问题内容: 你能告诉我如何在react js中渲染列表吗?我喜欢这样 问题答案: 您可以通过两种方式进行操作: 第一: 第二: 直接在返回中编写map函数

  • 请问下为什么renderDom能正常渲染renderComDom却渲染不出来?

  • 如何在组件返回中使用promise函数,如下所示: 因此,结果将是: 即使我在同一个组件中有几个promise,我也必须使用?

  • 1. 简介 本小节我们将介绍 Vue 渲染函数。包括什么是渲染函数、虚拟 DOM、如何编写渲染函数。渲染函数是一个难点,通常在一些简单的项目中不会使用,在处理一些复杂的业务场景时,使用渲染函数往往可以达到事半功倍的效果。 通过本小节的学习我们可以掌握渲染函数的基本用法,如果同学们学完本小节之后对此还不是特别熟悉也没有关系,我们可以先将基础知识融会贯通,然后再对该知识点多加练习,相信同学们一定可以熟

  • 问题内容: 我试图通过对象属性(此示例的名称)并在函数的轻松循环中列出它们。我发现这样做有些尴尬,但这似乎不正确。 这是我得到的: 有一个更好的方法吗?我只需要一个循环即可遍历对象数组,列出所需的属性并创建许多html节点之一。 问题答案: 您可以简单地在数组上 映射

  • 问题内容: 我想在一些嵌入式html中调用一个函数。我尝试了以下操作,但未调用该函数。这是在render方法中调用函数的错误方法吗? 问题答案: 要调用该函数,您必须添加