问题标签 [react-native-sectionlist]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
react-native - 如何使用 SeionList 展开和折叠指定部分?
我调用 api https://obscure-reaches-65656.herokuapp.com/api/getCloseTime?city=Miaoli&sTime=21&eTime=24来执行我的react-redux
操作并用于SectionList
显示数据。
使用官方教程,我使用SectionList
它只会显示所有部分,我尝试在单击标题时找到可以展开或折叠部分的方式。
我找到我的sectionComp
并renderSectionItem
使用相同的标题,所以我尝试使用this.state{ title: '', expand: false }
当我单击國興戲院
使用this.setState({ title: '國興戲院', expand: true })
并使用if(this.state.expand) {}
时renderSectionItem
显然它不起作用,因为我可能有很多部分。
我不知道下一步应该尝试什么。
任何帮助,将不胜感激。提前致谢。
这是我的类组件:
这是我的行动fetchSearchTime
:
关于SEARCH_TIME
减速机:
react-native - React Native:列表的条件道具
我想知道是否有一种方法可以根据条件为列表组件设置一组属性。
我想要ListFooterComponent
,onEndReachedThreshold
并且onEndReached
只有在设置时才this.props.fetchMoreData
设置。我是否需要在渲染函数的顶部放置一个 if 语句,或者是否可以创建一个单独的道具来对这 3 个进行分组并使用扩展运算符根据条件将其放回 SectionList 中。我不太确定该怎么做。
javascript - 在 React Native Section List 中过滤数据
我正在使用 React Native 的 SectionList。SectionList 的数据看起来像这样
我有一个文本输入,我尝试使用它过滤掉 SectionList 中的内容。我尝试使用Array.filter()
它似乎不起作用。它不经过任何过滤就返回给我整个数据。所以,我试过了Array.some()
。现在,即使有一项匹配,该部分中的所有数据项也会被过滤。这种行为是预期的Array.some()
。但我很困惑为什么Array.filter()
在我的情况下不起作用。
我的 SectionList 看起来像这样,
如果您想在线玩的话,这里是Expo Playground的链接。
react-native - 大型组件作为 VirtualizedList/etc 中的部分?
如果我想在虚拟化列表中显示一堆异构数据,默认的做法似乎是让父组件收集所有数据,以便它可以创建提供给列表组件的部分。
有没有办法避免要求父组件这样做?我想将父组件与数据收集部分分离,这样它所要做的就是声明它具有这样那样的组件,然后这些组件将负责收集数据。
如果它是 ScrollView,这将非常简单:
但是,为了利用 VirtualizedList 的性能增益,如果每个部分都很大,我需要将每个部分的单独数据传递到 VirtualizedList。我不确定如何执行此操作或是否可能。
typescript - 部分列表和打字稿
键入 SectionList 的正确方法是什么?我遇到了一个可行的错误(来自文档示例):
但这不会:
我收到此错误:
属性“renderSectionHeader”的类型不兼容。类型 '({ section: { title } }: { section: { title: any; }; }) => Element' 不可分配给类型 '(info: { section: SectionListData; }) => ReactElement'。参数 '__0' 和 'info' 的类型不兼容。类型'{部分:SectionListData; }' 不可分配给类型 '{ section: { title: any; }; }'。属性“部分”的类型不兼容。类型 'SectionListData' 不可分配给类型 '{ title: any; }'。“SectionListData”类型中缺少属性“标题”。
reactjs - React Native SectionList 替换数据键
我对 React 和 React native 还很陌生,但是我在填充 a 时遇到了一个问题,SectionList
并且还没有找到解决方案。
我有一个对象数组,每个对象都有自己的数组。SectionList 是显示此信息的理想选择,但是,每个部分的数组不称为“数据”,而SectionList
似乎期望每个部分中的数组的关键“数据”。
有没有办法告诉SectionList
使用另一个键而不是数据键来填充每个部分的数组?
image - 对 `require` 的调用只需要 1 个字符串字面量参数,但找到了:
我在应用程序中有一个带有 SectionList 的组件,它从本地 json 文件中解析其内容。列表项具有图像和文本,当需要使用 varibale 的图像时,它会导致错误:calls to require expect exactly 1 string literal argument, but this was found: item.logo
。
我的 json 文件
和renderItem
功能
已编辑
js中的函数require
不能动态工作。它的参数必须是字符串。
react-native - React Native 动画在 iPhone X 上滞后
部分列表似乎变得滞后一些模型进入导航堆栈。
所以主页(部分列表很好)。打开第 2 页(部分列表开始有点滞后)。打开第 3 页(部分列表非常滞后)。
这些页面之间的转换是相同的。Main -> 2 很好,2 - 3 很慢
方向变化是一样的。
我不确定为什么这似乎只发生在 iPhone X 上,但这是一个已知问题吗?有没有解决的办法?
这是一个非常滞后的零食项目第3页
react-native - 在滚动触发之前,某些项目不会显示在 SectionList 中
使用时SectionList
,虽然调用了 renderItem,但不会显示行。当在列表上触发滚动时,行会立即出现。
我在GitHub 上找到了一个 issue来讨论这个问题,但我没有找到任何解决方案来解决它。并且该问题已关闭并标记为已解决的问题。
在上述问题中找到的解决方案是removeClippedSubviews
通过SectionList
将值设置为禁用false
。我看到这不是解决方案,只是一个技巧。随着列表的巨大,禁用removeClippedSubviews
将是一个糟糕的解决方案,因为它不会优化列表视图的性能。
我一直在寻找很多小时,但没有任何解决方案来解决它。有什么建议可以解决这个问题吗?
我有使用:
react-native - 使用 react native sectionList 获取数据
我正在使用 firestore,并且正在尝试将数据提取到我的 SectionList 组件中。我希望这些部分按我的 Firestore 数据中的日期进行分解。例如,如果用户预订了 9 月 12 日的日期,则部分标题应显示给定日期的上一个星期日(在本例中为 9 月 9 日)。我的问题是我不断收到错误“sectionlist length undefined”。我知道它需要是一个数组。如何将来自 firestore 的数组中的信息放入“数据”和“标题”道具部分。
我已经从集合中提取数据并将其放入 this.state 中。我需要将日期中的信息插入我的 sectionlist 组件的各个部分。
}
我能够获得要填充的列表,但每个项目都在自己的视图中。我正在努力使同一周内的所有日期都属于该周视图组的星期日。这是我的函数,我知道我需要操纵数组的推送方式。