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

我可以在React-Native中将两个数据传递给FlatList吗?

阎单鹗
2023-03-14

我想传递两个数据(它们是NotifiCard组件中的notification,replynotification,这些数据是数组)给FlatList

有可能吗??这是我的密码

      const Notification = () => {
      const {notification, replynotification} = useSelector((state) => state.post);
      const dispatch  = useDispatch();

      useEffect(() => {
        dispatch({
          type:CHECKNOTIFICATION_REQUEST,
        })
      },[]);
        return (
        <FlatList
        data={notification}
        keyExtractor={(item) => String(item.id)}
        renderItem={({item}) => (
          <NotifiCard
          item={item}
          />
        )}
        />
        );
    };

    export default Notification;

那我怎么修复我的代码??

共有1个答案

万俟亦
2023-03-14

我希望我已经正确地理解了这个问题。如果您有两个不同的数组notification和replynotification,并且您希望将这两个数组作为一个数组提供给FlatList,那么您应该使用spread运算符(...),这样您就可以将所有数据分散在一个唯一的数组中。

const array = [
  ...notification,
  ...replynotification
]

这样,您将拥有一个数组,其中包含所需的所有数据。请注意,如果notification和replynotification具有不同的结构,则将有一个数组,其中的项具有不同的结构。

<FlatList
 data={array}
 keyExtractor={(item) => String(item.id)}
 renderItem={({item}) => (
  <NotifiCard
   item={item}
  />
 )}
/>
 类似资料:
  • 我无法将数据从Java·activity传递给react Native。我正在处理一个卡片支付,当支付完成时,响应存储在一个名为message的变量中。我需要将此消息传递给我的react本机代码。 //Java模块,我要传递的数据在“消息”中 公共类HelloWorldModule扩展ReactContextBaseJavaModule实现ActivityEventListener{activit

  • 问题内容: 我已经在子组件的窗体上创建了。使用jquery ajax方法提交该表单后,我将以json格式检索一些数据。我想将该数据置于父组件的状态。那么,react.js中是否有任何方法可以将值或数据从子组件传递到其父组件? 谢谢.. 问题答案: 在没有某种Flux实现的情况下执行此操作的方法是在父元素上创建一个函数来处理来自子级的响应/数据,并将该函数作为道具传递。然后从孩子那里调用该函数。像这

  • 问题内容: 我试图在我的应用程序的屏幕之间传递数据。目前我正在使用 我有我的index.js 应用为 然后在secondscreen.js中,我们将从前一个屏幕获取的数据作为 每当我console.log我得到未定义。 https://reactnavigation.org/docs/navigators/navigation- prop 文档说每个屏幕都应该具有这些值,我在做什么错呢? 问题答案

  • 下面您将找到应该调用的函数,而不是: 我可以为这些自定义类型创建工厂,并根据值生成类型,而不是传递给的类型,或者传递一个字符串化的对象(对象/数组、更多的对象/数组)。但我想知道(尤其是后者,它让我发冷)是否真的有必要。文档只提到这个函数,作为向区块链提交事务的一种方式。 我应该用我的工厂解决方案吗?是否有另一个函数,我可以使用它来提交使用类型的事务?或者这不是我应该构造我的链码的方式,我应该考虑

  • 问题内容: 我有一个带有一些componentDidMount逻辑的React组件: 是否可以通过props传递此组件,以便componentDidMount()中的所有内容都被执行,以某种方式伪造以便截取屏幕截图?遵循以下原则: 我知道我可以使用,但是我有一些复杂的登录逻辑,我想使用这样的快捷方式来避免,而是将所有需要的道具直接传递给组件? 问题答案: 在这里回答了这个问题。让我们在这里尝试相同

  • 问题内容: 我有一个Oracle表,并且column()的类型为。它有一个行的值就是 当我说 甲骨文说号码无效。这是为什么?为什么我不能通过数字? 编辑:所有的答复都是伟大的。谢谢你。但我无法理解为什么它并不需要的时候是有效的VARCHAR2数据类型。 问题答案: 问题在于您希望Oracle将隐式地将1234转换为字符类型。相反,Oracle将列隐式转换为数字。列中有一个非数字值,因此Oracle