【问题标题】:making a virtualized list with a separate file in react在反应中使用单独的文件制作虚拟列表
【发布时间】:2021-10-09 13:57:54
【问题描述】:

我在 app.js 中创建了一个待办事项列表应用程序,并在 VirtualizedList.js 中创建了一个虚拟化列表,但没有显示任何虚拟化列表代码,尽管我将其正确导入 app.js。

这是 VirtualizedList.js 代码。

import React from 'react';
import { SafeAreaView, View, VirtualizedList, StyleSheet, Text, 
StatusBar } from 'react-native';

const DATA = [];

const getItem = (data, index) => ({
  id: Math.random().toString(12).substring(0),
  title: `Item ${index+1}`
});

const getItemCount = (data) => 50;

const Item = ({ title }) => (
  <View style={styles.item}>
    <Text style={styles.title}>{title}</Text>
  </View>
   );

const App = () => {
  return (
     <SafeAreaView style={styles.container}>
      <VirtualizedList
        data={DATA}
        initialNumToRender={4}
        renderItem={({ item }) => <Item title={item.title} />}
        keyExtractor={item => item.key}
        getItemCount={getItemCount}
        getItem={getItem}
      />
    </SafeAreaView>
  );
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
   marginTop: StatusBar.currentHeight,
  },
  item: {
    backgroundColor: '#f9c2ff',
    height: 100,
    justifyContent: 'center',
   marginVertical: 7,
    marginHorizontal: 24,
    padding: 20,
 },
  title: {
   fontSize: 25,
  },
});

export default App;

这就是我将 VirtualizedList 导入 app.js 的方式: 从 '/Users/myname/Applications/todo- 导入 VirtualizedList app/src/components/VirtualizedList';

【问题讨论】:

    标签: reactjs react-native react-hooks react-virtualized


    【解决方案1】:

    通常,您会在 VirtualizedList.js 中导出默认列表,然后将它们作为普通对象导入 App.js(渲染器)中。但我必须看到代码才能确定

    【讨论】:

    • 谢谢。我能够解决这个问题。但是现在当我运行 app.js 时,我的 virtualized.js 代码都没有出现
    • 您的数据是DATA。这是您自己定义的空列表。它不应该渲染任何东西。我认为您希望您的数据是列表中的数据
    猜你喜欢
    • 2018-03-04
    • 1970-01-01
    • 1970-01-01
    • 2019-01-20
    • 2017-07-13
    • 2017-05-05
    • 2019-05-13
    • 2017-05-18
    • 2018-01-23
    相关资源
    最近更新 更多