gpt4 book ai didi

javascript - React Native - FlatList 排序而不排序数据

转载 作者:行者123 更新时间:2023-11-30 15:10:06 25 4
gpt4 key购买 nike

有没有办法渲染Flatlist在不对数据源进行排序的情况下按特定顺序排列行?

示例

<FlatList
data={[{key: 'a'}, {key: 'c'}, {key: 'b'}]}
renderItem={({item}) => <Text>{item.key}</Text>}
/>

上面的代码渲染了一个列表

a
c
b

有没有办法让它在不对数据源进行排序的情况下呈现以下内容?

a
b
c

最佳答案

基本上您是在说,我想要披萨,但不要使用香肠、肉等。因此答案是否定的。

为了执行高效排序和排序,可以试试linq.js

linq.js,简称为 LINQ for JavaScript。一些特别有用/相关的功能包括:

  • 实现所有 .NET 4.0 方法和许多额外的方法(灵感来自 Rx、Achiral、Haskell、Ruby 等...)
  • 完成lazy evaluation
  • 绑定(bind) JavaScript (RxJS) 和 IntelliSense 的响应式扩展

如果 Linq.JS 可以解决您的性能问题,您应该先对其进行排序,然后再渲染排序后的数据源。

另一种选择是使用 lodash,据称其性能更好,请参阅 this link了解详情。

enter image description here

以下是对一些数据进行排序的代码片段:LINQ.JS:

var queryResult = $.Enumerable.From(jsonArray)
.OrderBy(function(x) {
return x.user.screen_name
})
.Select(function(x) {
return x.user.screen_name + ':' + x.text
})
.ToArray();

Lodash:

var queryResults = _.chain(jsonArray)
.sortBy(function (x) { return x.user.screen_name })
.map(function(x) {
return x.user.screen_name + ':' + x.text
})
.value();

关于javascript - React Native - FlatList 排序而不排序数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45229682/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com