0.10.4 • Published 3 years ago

react-native-nested-listview-animated v0.10.4

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

react-native-nested-listview

UI component for React Native that allows to create a listview with N levels of nesting

platforms CircleCI codecov npm github release CodeFactor

Table of contents

  1. Show
  2. Usage
  3. Props
  4. Examples
  5. Roadmap

Show

react-native-nested-listview react-native-nested-listview

Usage

yarn add react-native-nested-listview
import NestedListView, {NestedRow} from 'react-native-nested-listview'

const data = [{title: 'Node 1', items: [{title: 'Node 1.1'}, {title: 'Node 1.2'}]}]

<NestedListView
  data={data}
  getChildrenName={(node) => 'items'}
  onNodePressed={(node) => alert('Selected node')}
  renderNode={(node, level, isLastLevel) => (
    <NestedRow
      level={level}
      style={styles.row}
    >
      <Text>{node.title}</Text>
    </NestedRow>
  )}
/>

Props

NestedListView

PropDescriptionTypeDefault
dataArray of nested itemsArrayRequired
renderNodeTakes a node from data and renders it into the NestedlistView. The function receives {node, level, isLastLevel} (see Usage) and must return a React element.FunctionRequired
getChildrenNameFunction to determine in a node where are the children, by default NestedListView will try to find them in itemsFunctionitems
onNodePressedFunction called when a node is pressed by a userFunctionNot required
extraDataA marker property for telling the list to re-renderBooleanNot required
keepOpenedStateProp for keeping the opened state of each node when data passed to the list changesBooleanNot required

NestedRow

PropDescriptionTypeDefault
heightHeight of the rownumber50
childrenContent of the NestedRowComponentRequired
levelLevel where a given node isnumberRequired
styleNestedRow container styleStyleNot required

Examples

You can find examples here.

Version AppReact NativeLibrary
1.0.00.63.20.9.2

Roadmap

I have moved the roadmap of this library to this trello board so that it can be easier to add more things and like that it doesn't create issues in GitHub if I need to create a ticket

Roadmap Trello Board