dragManager.js 576 B

12345678910111213141516171819202122
  1. export default function(state, emitter) {
  2. emitter.on('DOMContentLoaded', () => {
  3. document.body.addEventListener('dragover', event => {
  4. if (state.route === '/') {
  5. event.preventDefault();
  6. }
  7. });
  8. document.body.addEventListener('drop', event => {
  9. if (
  10. state.route === '/' &&
  11. !state.uploading &&
  12. event.dataTransfer &&
  13. event.dataTransfer.files
  14. ) {
  15. event.preventDefault();
  16. emitter.emit('addFiles', {
  17. files: Array.from(event.dataTransfer.files)
  18. });
  19. }
  20. });
  21. });
  22. }