Advertisement
Guest User

Untitled

a guest
May 21st, 2019
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.45 KB | None | 0 0
  1. import React from "react";
  2. import { render } from "react-dom";
  3. import ReactDropzone from "react-dropzone";
  4. import request from "superagent";
  5.  
  6. export default class App extends React.Component {
  7. constructor(props) {
  8. super(props);
  9.  
  10. this.state = {
  11. files: [],
  12. };
  13. }
  14.  
  15. onDrop = (files) => {
  16. // POST to a test endpoint for demo purposes
  17. const req = request.post('https://httpbin.org/post');
  18.  
  19. files.forEach(file => {
  20. req.attach(file.name, file);
  21. });
  22.  
  23. req.end();
  24. }
  25.  
  26. onPreviewDrop = (files) => {
  27. this.setState({
  28. files: this.state.files.concat(files),
  29. });
  30. }
  31.  
  32. onFiles = (file) => {
  33. ReactDropzone.map(file => (
  34. <div className="preview-container">
  35. <li key={file.name}>
  36. {file.name} - {file.size} bytes
  37. </li>
  38. </div>
  39. ),);
  40. }
  41.  
  42. render() {
  43. const previewStyle = {
  44. display: 'inline',
  45. width: 100,
  46. height: 100,
  47. };
  48.  
  49. return (
  50. <section className="container">
  51. <div {...ReactDropzone({className: 'dropzone disabled'})}>
  52. <div className="test">
  53. <input className="file-container" {...ReactDropzone()} />
  54. </div>
  55. <p>Drag 'n' drop some files here, or click to select files</p>
  56. </div>
  57. <aside>
  58. <h4>Files</h4>
  59. <ul>onFiles()</ul>
  60. </aside>
  61. </section>
  62. );
  63. }
  64. }
  65.  
  66. const container = document.createElement("div");
  67. document.body.appendChild(container);
  68. render(<App />, container);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement