javascript 排序 react-native FlatList

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/51742856/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-29 09:40:46  来源:igfitidea点击:

Sorting react-native FlatList

javascriptreactjsreact-nativesorting

提问by J.dev

How can I sort the FlatListby alphabetical order?

如何FlatList按字母顺序排序?

export default function PartnersList(props) {
  const { partners, onPartnerDetails } = props;

  return (
    <FlatList
      style={layout.list}
      contentContainerStyle={layout.listContainer}
      numColumns={2}
      data={partners}
      renderItem={({ item }) => (

        ...

回答by Qiarash

Sorting partnerswould do the trick:

排序partners可以解决问题:

export default function PartnersList(props) {
  const { partners, onPartnerDetails } = props;

  return (
    <FlatList
      style={layout.list}
      contentContainerStyle={layout.listContainer}
      numColumns={2}
      data={partners.sort((a, b) => a.localeCompare(b))}
      renderItem={({ item }) => (

        ...

This works if partnersis an array of strings.

如果partners是字符串数组,则此方法有效。

If it's an array of objects then you should sort by a string within that object.

如果它是一个对象数组,那么您应该按该对象中的字符串排序。

for example if partner has a nameproperty, sort must be:

例如,如果合作伙伴有一个name财产,则排序必须是:

....
data={partners.sort((a, b) => a.name.localeCompare(b.name))}
....