Socket
Socket
Sign inDemoInstall

react-native-dragging-list

Package Overview
Dependencies
0
Maintainers
1
Versions
9
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    react-native-dragging-list

React Native package for drag and drop list.


Version published
Weekly downloads
13
decreased by-13.33%
Maintainers
1
Install size
8.14 kB
Created
Weekly downloads
 

Readme

Source

react-native-dragging-list

A react native package for simply dragging and dropping list items.

Getting Started

Install via npm

npm i react-native-dragging-list

Usage

Import the DragAndDrop component from react-native-dragging-list:

import DragAndDrop from 'react-native-dragging-list'

This component accepts 4 parameters / props:

  1. data: It contains data in form of an array which will be mapped.
  2. RenderItem: It accepts a function which returns the mapped data. It accepts a single parameter which indicates a single element of the data array.
  3. DraggingHandle: It also accepts a function which returns a component which is sort of a handle through which an item can be dragged around. User can use horizontal bars or any image according to his/her liking.
  4. listItemStyling: This is a styling object which can be used to customize list items. User can define the styling here and it will be implemented on all list items.

Usage Example:

import DragAndDrop from 'react-native-dragging-list'

function RenderItem({ item }) {
  return (
    <View>
      <Text style = {{textAlign: 'center'}}> { item } </Text>
    </View>
  )
}

function DraggingHandle() {
    return (
      <View>
        <Text>....</Text>
      </View>
    )
  }

const listItemStyling = { 
  width: '100%', 
  flexDirection: 'row', 
  justifyContent: 'space-around', 
  alignItems: 'center', 
  height: 70, 
  borderWidth: 1, 
  borderColor: 'black', 
  backgroundColor: 'grey' 
}

class DraggableList extends Component {
  render() {
    const data = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
    return (
      <View style = {{ flex: 1}}>
        <DragAndDrop 
          data = { data }
          RenderItem = { RenderItem }
          DraggingHandle = { DraggingHandle }
          listItemStyling = { listItemStyling }
        />
      </View>
    )
  }
}

export default DraggableList

Build with:

  1. React
  2. react-native
  3. PanResponder
  4. Animated
  5. FlatList

NOTE:

  1. It is highly recommended to give same height to all list items otherwise you may face some issues using this package.
  2. Don't forget to give flex: 1 styling to the <View> inside which you use this component otherwise the list will not be visible as it will take default height as 0.

Keywords

FAQs

Last updated on 22 Jan 2020

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc