1

Firebase 데이터베이스에서 추출한 항목 목록이 있으며 반응하는 기본 응용 프로그램에서 알파벳순으로 정렬/정렬해야합니다. React native 목록의 Firebase 데이터베이스에서 항목 정렬/정렬

listenForItems(itemsRef) { 
     itemsRef.on('value', (snap) => { 

      let items = []; 
      snap.forEach((child) => { 
       items.push({ 
        name: child.val().name, 
        _key  : child.key 
       }); 
      }); 

      this.setState({ 
       dataSource: this.state.dataSource.cloneWithRows(items) 
      }); 

     }); 
    } 


render() { 
     return (
       <ListView 
        automaticallyAdjustContentInsets={true} 
        dataSource={this.state.dataSource} 
        renderRow={this._renderItem.bind(this.props)} 
        enableEmptySections={true}/> 
     ); 
    } 

내가이 http://docs.telerik.com/kendo-ui/api/javascript/data/datasource#methods-query을 발견하지만 난 정말 데이터 소스의 정렬 방법을 사용하는 방법을 알고하지 않았다 : 그래서 여기 내가 사용하는 코드입니다. 어떤 도움이 필요합니까? 나 또한 네이티브 목록보기에 반응하는 항목을 정렬하는 다른 솔루션에 대해 열려 있습니다.

답변

1

데이터 세트에 적용하기 전에 Array.prototype.sort을 사용하여 목록을 정렬하면됩니다. 나는 스 니펫을 깰 때 RN 코드를 제거했다.

+0

let items = [{ name: 'Z' }, { name: 'A' }, { name: 'Y' }]; let sorted = items.sort((a, b) => { if (a.name < b.name) { return -1; } if (a.name > b.name) { return 1; } return 0; }); console.log(sorted)

은 .. 감사하지만 난 내 경우에 적용 생각하지 않습니다 : 나는 내가 중포 기지 데이터베이스에서 그들을 얻기 전에 모르는 많은 양의 데이터를 가지고 .. 사실 내 케이스의 항목은 앱을 사용하는 동안 데이터베이스에서 동적으로 청구됩니다. – user3521011

관련 문제