An open API service indexing awesome lists of open source software.

https://github.com/pjb0811/react-dnd-component

components using react & react-dnd
https://github.com/pjb0811/react-dnd-component

react react-dnd

Last synced: 5 months ago
JSON representation

components using react & react-dnd

Awesome Lists containing this project

README

          

# react-dnd-component

> components using react & react-dnd

[![NPM](https://img.shields.io/npm/v/react-dnd-component.svg)](https://www.npmjs.com/package/react-dnd-component) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Install

```bash
npm install --save react-dnd-component
```

## Usage

### List

[demo](https://codesandbox.io/s/ll724prxrq)

```tsx
import React, { Component } from 'react';
import { List, DragDropContext, HTML5Backend } from 'react-dnd-component';

class App extends Component {
render() {
const style = {
display: 'flex',
justifyContent: 'space-around',
paddingTop: '20px',
flexWrap: 'wrap'
};

const itemStyle = {
width: 200,
height: 200,
display: 'inline-flex',
justifyContent: 'center',
alignItems: 'center',
color: 'white',
fontSize: 20
};

const item = length => {
return Array.from({ length }, (x, i) => {
return (


{i}

);
});
};

return (


{
console.log(state);
}}
>
{item(5)}


{item(5)}


);
}
}

export default DragDropContext(HTML5Backend)(App);
```

### Native Files

[demo](https://codesandbox.io/s/6j6x9jp183)

```tsx
import React, { Component } from 'react';
import {
NativeFiles,
DragDropContext,
HTML5Backend
} from 'react-dnd-component';

class App extends Component {
render() {
return (

{({ canDrop, isOver, files, removeFiles }) => {
return (

);
}}

);
}
}

const style = {
width: 200,
height: 200,
border: '1px solid'
};

class FileList extends React.Component {
render() {
const { files, canDrop, isOver, removeFiles } = this.props;
const isActive = canDrop && isOver;

if (files.length === 0) {
return (


{isActive ? 'Release to drop' : 'Drag file here'}


);
}

return (


{this.list(files)}
remove files

);
}

list = files => {
return files.map(file =>

name: {file.name}
);
};
}

export default DragDropContext(HTML5Backend)(App);
```

## License

MIT © [pjb0811](https://github.com/pjb0811)