{"remainingRequest":"D:\\源码\\vue-element-admin-master\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\源码\\vue-element-admin-master\\src\\components\\Dropzone\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\源码\\vue-element-admin-master\\src\\components\\Dropzone\\index.vue","mtime":1649647926000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"D:\\源码\\vue-element-admin-master\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KCmltcG9ydCBEcm9wem9uZSBmcm9tICdkcm9wem9uZScKaW1wb3J0ICdkcm9wem9uZS9kaXN0L2Ryb3B6b25lLmNzcycKLy8gaW1wb3J0IHsgZ2V0VG9rZW4gfSBmcm9tICdhcGkvcWluaXUnOwoKRHJvcHpvbmUuYXV0b0Rpc2NvdmVyID0gZmFsc2UKCmV4cG9ydCBkZWZhdWx0IHsKICBwcm9wczogewogICAgaWQ6IHsKICAgICAgdHlwZTogU3RyaW5nLAogICAgICByZXF1aXJlZDogdHJ1ZQogICAgfSwKICAgIHVybDogewogICAgICB0eXBlOiBTdHJpbmcsCiAgICAgIHJlcXVpcmVkOiB0cnVlCiAgICB9LAogICAgY2xpY2thYmxlOiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IHRydWUKICAgIH0sCiAgICBkZWZhdWx0TXNnOiB7CiAgICAgIHR5cGU6IFN0cmluZywKICAgICAgZGVmYXVsdDogJ+S4iuS8oOWbvueJhycKICAgIH0sCiAgICBhY2NlcHRlZEZpbGVzOiB7CiAgICAgIHR5cGU6IFN0cmluZywKICAgICAgZGVmYXVsdDogJycKICAgIH0sCiAgICB0aHVtYm5haWxIZWlnaHQ6IHsKICAgICAgdHlwZTogTnVtYmVyLAogICAgICBkZWZhdWx0OiAyMDAKICAgIH0sCiAgICB0aHVtYm5haWxXaWR0aDogewogICAgICB0eXBlOiBOdW1iZXIsCiAgICAgIGRlZmF1bHQ6IDIwMAogICAgfSwKICAgIHNob3dSZW1vdmVMaW5rOiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IHRydWUKICAgIH0sCiAgICBtYXhGaWxlc2l6ZTogewogICAgICB0eXBlOiBOdW1iZXIsCiAgICAgIGRlZmF1bHQ6IDIKICAgIH0sCiAgICBtYXhGaWxlczogewogICAgICB0eXBlOiBOdW1iZXIsCiAgICAgIGRlZmF1bHQ6IDMKICAgIH0sCiAgICBhdXRvUHJvY2Vzc1F1ZXVlOiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IHRydWUKICAgIH0sCiAgICB1c2VDdXN0b21Ecm9wem9uZU9wdGlvbnM6IHsKICAgICAgdHlwZTogQm9vbGVhbiwKICAgICAgZGVmYXVsdDogZmFsc2UKICAgIH0sCiAgICBkZWZhdWx0SW1nOiB7CiAgICAgIGRlZmF1bHQ6ICcnLAogICAgICB0eXBlOiBbU3RyaW5nLCBBcnJheV0KICAgIH0sCiAgICBjb3VsZFBhc3RlOiB7CiAgICAgIHR5cGU6IEJvb2xlYW4sCiAgICAgIGRlZmF1bHQ6IGZhbHNlCiAgICB9CiAgfSwKICBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgZHJvcHpvbmU6ICcnLAogICAgICBpbml0T25jZTogdHJ1ZQogICAgfQogIH0sCiAgd2F0Y2g6IHsKICAgIGRlZmF1bHRJbWcodmFsKSB7CiAgICAgIGlmICh2YWwubGVuZ3RoID09PSAwKSB7CiAgICAgICAgdGhpcy5pbml0T25jZSA9IGZhbHNlCiAgICAgICAgcmV0dXJuCiAgICAgIH0KICAgICAgaWYgKCF0aGlzLmluaXRPbmNlKSByZXR1cm4KICAgICAgdGhpcy5pbml0SW1hZ2VzKHZhbCkKICAgICAgdGhpcy5pbml0T25jZSA9IGZhbHNlCiAgICB9CiAgfSwKICBtb3VudGVkKCkgewogICAgY29uc3QgZWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQpCiAgICBjb25zdCB2bSA9IHRoaXMKICAgIHRoaXMuZHJvcHpvbmUgPSBuZXcgRHJvcHpvbmUoZWxlbWVudCwgewogICAgICBjbGlja2FibGU6IHRoaXMuY2xpY2thYmxlLAogICAgICB0aHVtYm5haWxXaWR0aDogdGhpcy50aHVtYm5haWxXaWR0aCwKICAgICAgdGh1bWJuYWlsSGVpZ2h0OiB0aGlzLnRodW1ibmFpbEhlaWdodCwKICAgICAgbWF4RmlsZXM6IHRoaXMubWF4RmlsZXMsCiAgICAgIG1heEZpbGVzaXplOiB0aGlzLm1heEZpbGVzaXplLAogICAgICBkaWN0UmVtb3ZlRmlsZTogJ1JlbW92ZScsCiAgICAgIGFkZFJlbW92ZUxpbmtzOiB0aGlzLnNob3dSZW1vdmVMaW5rLAogICAgICBhY2NlcHRlZEZpbGVzOiB0aGlzLmFjY2VwdGVkRmlsZXMsCiAgICAgIGF1dG9Qcm9jZXNzUXVldWU6IHRoaXMuYXV0b1Byb2Nlc3NRdWV1ZSwKICAgICAgZGljdERlZmF1bHRNZXNzYWdlOiAnPGkgc3R5bGU9Im1hcmdpbi10b3A6IDNlbTtkaXNwbGF5OiBpbmxpbmUtYmxvY2siIGNsYXNzPSJtYXRlcmlhbC1pY29ucyI+JyArIHRoaXMuZGVmYXVsdE1zZyArICc8L2k+PGJyPkRyb3AgZmlsZXMgaGVyZSB0byB1cGxvYWQnLAogICAgICBkaWN0TWF4RmlsZXNFeGNlZWRlZDogJ+WPquiDveS4gOS4quWbvicsCiAgICAgIHByZXZpZXdUZW1wbGF0ZTogJzxkaXYgY2xhc3M9ImR6LXByZXZpZXcgZHotZmlsZS1wcmV2aWV3Ij4gIDxkaXYgY2xhc3M9ImR6LWltYWdlIiBzdHlsZT0id2lkdGg6JyArIHRoaXMudGh1bWJuYWlsV2lkdGggKyAncHg7aGVpZ2h0OicgKyB0aGlzLnRodW1ibmFpbEhlaWdodCArICdweCIgPjxpbWcgc3R5bGU9IndpZHRoOicgKyB0aGlzLnRodW1ibmFpbFdpZHRoICsgJ3B4O2hlaWdodDonICsgdGhpcy50aHVtYm5haWxIZWlnaHQgKyAncHgiIGRhdGEtZHotdGh1bWJuYWlsIC8+PC9kaXY+ICA8ZGl2IGNsYXNzPSJkei1kZXRhaWxzIj48ZGl2IGNsYXNzPSJkei1zaXplIj48c3BhbiBkYXRhLWR6LXNpemU+PC9zcGFuPjwvZGl2PiA8ZGl2IGNsYXNzPSJkei1wcm9ncmVzcyI+PHNwYW4gY2xhc3M9ImR6LXVwbG9hZCIgZGF0YS1kei11cGxvYWRwcm9ncmVzcz48L3NwYW4+PC9kaXY+ICA8ZGl2IGNsYXNzPSJkei1lcnJvci1tZXNzYWdlIj48c3BhbiBkYXRhLWR6LWVycm9ybWVzc2FnZT48L3NwYW4+PC9kaXY+ICA8ZGl2IGNsYXNzPSJkei1zdWNjZXNzLW1hcmsiPiA8aSBjbGFzcz0ibWF0ZXJpYWwtaWNvbnMiPmRvbmU8L2k+IDwvZGl2PiAgPGRpdiBjbGFzcz0iZHotZXJyb3ItbWFyayI+PGkgY2xhc3M9Im1hdGVyaWFsLWljb25zIj5lcnJvcjwvaT48L2Rpdj48L2Rpdj4nLAogICAgICBpbml0KCkgewogICAgICAgIGNvbnN0IHZhbCA9IHZtLmRlZmF1bHRJbWcKICAgICAgICBpZiAoIXZhbCkgcmV0dXJuCiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsKSkgewogICAgICAgICAgaWYgKHZhbC5sZW5ndGggPT09IDApIHJldHVybgogICAgICAgICAgdmFsLm1hcCgodiwgaSkgPT4gewogICAgICAgICAgICBjb25zdCBtb2NrRmlsZSA9IHsgbmFtZTogJ25hbWUnICsgaSwgc2l6ZTogMTIzNDUsIHVybDogdiB9CiAgICAgICAgICAgIHRoaXMub3B0aW9ucy5hZGRlZGZpbGUuY2FsbCh0aGlzLCBtb2NrRmlsZSkKICAgICAgICAgICAgdGhpcy5vcHRpb25zLnRodW1ibmFpbC5jYWxsKHRoaXMsIG1vY2tGaWxlLCB2KQogICAgICAgICAgICBtb2NrRmlsZS5wcmV2aWV3RWxlbWVudC5jbGFzc0xpc3QuYWRkKCdkei1zdWNjZXNzJykKICAgICAgICAgICAgbW9ja0ZpbGUucHJldmlld0VsZW1lbnQuY2xhc3NMaXN0LmFkZCgnZHotY29tcGxldGUnKQogICAgICAgICAgICB2bS5pbml0T25jZSA9IGZhbHNlCiAgICAgICAgICAgIHJldHVybiB0cnVlCiAgICAgICAgICB9KQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICBjb25zdCBtb2NrRmlsZSA9IHsgbmFtZTogJ25hbWUnLCBzaXplOiAxMjM0NSwgdXJsOiB2YWwgfQogICAgICAgICAgdGhpcy5vcHRpb25zLmFkZGVkZmlsZS5jYWxsKHRoaXMsIG1vY2tGaWxlKQogICAgICAgICAgdGhpcy5vcHRpb25zLnRodW1ibmFpbC5jYWxsKHRoaXMsIG1vY2tGaWxlLCB2YWwpCiAgICAgICAgICBtb2NrRmlsZS5wcmV2aWV3RWxlbWVudC5jbGFzc0xpc3QuYWRkKCdkei1zdWNjZXNzJykKICAgICAgICAgIG1vY2tGaWxlLnByZXZpZXdFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ2R6LWNvbXBsZXRlJykKICAgICAgICAgIHZtLmluaXRPbmNlID0gZmFsc2UKICAgICAgICB9CiAgICAgIH0sCiAgICAgIGFjY2VwdDogKGZpbGUsIGRvbmUpID0+IHsKICAgICAgICAvKiDkuIPniZsqLwogICAgICAgIC8vIGNvbnN0IHRva2VuID0gdGhpcy4kc3RvcmUuZ2V0dGVycy50b2tlbjsKICAgICAgICAvLyBnZXRUb2tlbih0b2tlbikudGhlbihyZXNwb25zZSA9PiB7CiAgICAgICAgLy8gICBmaWxlLnRva2VuID0gcmVzcG9uc2UuZGF0YS5xaW5pdV90b2tlbjsKICAgICAgICAvLyAgIGZpbGUua2V5ID0gcmVzcG9uc2UuZGF0YS5xaW5pdV9rZXk7CiAgICAgICAgLy8gICBmaWxlLnVybCA9IHJlc3BvbnNlLmRhdGEucWluaXVfdXJsOwogICAgICAgIC8vICAgZG9uZSgpOwogICAgICAgIC8vIH0pCiAgICAgICAgZG9uZSgpCiAgICAgIH0sCiAgICAgIHNlbmRpbmc6IChmaWxlLCB4aHIsIGZvcm1EYXRhKSA9PiB7CiAgICAgICAgLy8gZm9ybURhdGEuYXBwZW5kKCd0b2tlbicsIGZpbGUudG9rZW4pOwogICAgICAgIC8vIGZvcm1EYXRhLmFwcGVuZCgna2V5JywgZmlsZS5rZXkpOwogICAgICAgIHZtLmluaXRPbmNlID0gZmFsc2UKICAgICAgfQogICAgfSkKCiAgICBpZiAodGhpcy5jb3VsZFBhc3RlKSB7CiAgICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3Bhc3RlJywgdGhpcy5wYXN0ZUltZykKICAgIH0KCiAgICB0aGlzLmRyb3B6b25lLm9uKCdzdWNjZXNzJywgZmlsZSA9PiB7CiAgICAgIHZtLiRlbWl0KCdkcm9wem9uZS1zdWNjZXNzJywgZmlsZSwgdm0uZHJvcHpvbmUuZWxlbWVudCkKICAgIH0pCiAgICB0aGlzLmRyb3B6b25lLm9uKCdhZGRlZGZpbGUnLCBmaWxlID0+IHsKICAgICAgdm0uJGVtaXQoJ2Ryb3B6b25lLWZpbGVBZGRlZCcsIGZpbGUpCiAgICB9KQogICAgdGhpcy5kcm9wem9uZS5vbigncmVtb3ZlZGZpbGUnLCBmaWxlID0+IHsKICAgICAgdm0uJGVtaXQoJ2Ryb3B6b25lLXJlbW92ZWRGaWxlJywgZmlsZSkKICAgIH0pCiAgICB0aGlzLmRyb3B6b25lLm9uKCdlcnJvcicsIChmaWxlLCBlcnJvciwgeGhyKSA9PiB7CiAgICAgIHZtLiRlbWl0KCdkcm9wem9uZS1lcnJvcicsIGZpbGUsIGVycm9yLCB4aHIpCiAgICB9KQogICAgdGhpcy5kcm9wem9uZS5vbignc3VjY2Vzc211bHRpcGxlJywgKGZpbGUsIGVycm9yLCB4aHIpID0+IHsKICAgICAgdm0uJGVtaXQoJ2Ryb3B6b25lLXN1Y2Nlc3NtdWx0aXBsZScsIGZpbGUsIGVycm9yLCB4aHIpCiAgICB9KQogIH0sCiAgZGVzdHJveWVkKCkgewogICAgZG9jdW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigncGFzdGUnLCB0aGlzLnBhc3RlSW1nKQogICAgdGhpcy5kcm9wem9uZS5kZXN0cm95KCkKICB9LAogIG1ldGhvZHM6IHsKICAgIHJlbW92ZUFsbEZpbGVzKCkgewogICAgICB0aGlzLmRyb3B6b25lLnJlbW92ZUFsbEZpbGVzKHRydWUpCiAgICB9LAogICAgcHJvY2Vzc1F1ZXVlKCkgewogICAgICB0aGlzLmRyb3B6b25lLnByb2Nlc3NRdWV1ZSgpCiAgICB9LAogICAgcGFzdGVJbWcoZXZlbnQpIHsKICAgICAgY29uc3QgaXRlbXMgPSAoZXZlbnQuY2xpcGJvYXJkRGF0YSB8fCBldmVudC5vcmlnaW5hbEV2ZW50LmNsaXBib2FyZERhdGEpLml0ZW1zCiAgICAgIGlmIChpdGVtc1swXS5raW5kID09PSAnZmlsZScpIHsKICAgICAgICB0aGlzLmRyb3B6b25lLmFkZEZpbGUoaXRlbXNbMF0uZ2V0QXNGaWxlKCkpCiAgICAgIH0KICAgIH0sCiAgICBpbml0SW1hZ2VzKHZhbCkgewogICAgICBpZiAoIXZhbCkgcmV0dXJuCiAgICAgIGlmIChBcnJheS5pc0FycmF5KHZhbCkpIHsKICAgICAgICB2YWwubWFwKCh2LCBpKSA9PiB7CiAgICAgICAgICBjb25zdCBtb2NrRmlsZSA9IHsgbmFtZTogJ25hbWUnICsgaSwgc2l6ZTogMTIzNDUsIHVybDogdiB9CiAgICAgICAgICB0aGlzLmRyb3B6b25lLm9wdGlvbnMuYWRkZWRmaWxlLmNhbGwodGhpcy5kcm9wem9uZSwgbW9ja0ZpbGUpCiAgICAgICAgICB0aGlzLmRyb3B6b25lLm9wdGlvbnMudGh1bWJuYWlsLmNhbGwodGhpcy5kcm9wem9uZSwgbW9ja0ZpbGUsIHYpCiAgICAgICAgICBtb2NrRmlsZS5wcmV2aWV3RWxlbWVudC5jbGFzc0xpc3QuYWRkKCdkei1zdWNjZXNzJykKICAgICAgICAgIG1vY2tGaWxlLnByZXZpZXdFbGVtZW50LmNsYXNzTGlzdC5hZGQoJ2R6LWNvbXBsZXRlJykKICAgICAgICAgIHJldHVybiB0cnVlCiAgICAgICAgfSkKICAgICAgfSBlbHNlIHsKICAgICAgICBjb25zdCBtb2NrRmlsZSA9IHsgbmFtZTogJ25hbWUnLCBzaXplOiAxMjM0NSwgdXJsOiB2YWwgfQogICAgICAgIHRoaXMuZHJvcHpvbmUub3B0aW9ucy5hZGRlZGZpbGUuY2FsbCh0aGlzLmRyb3B6b25lLCBtb2NrRmlsZSkKICAgICAgICB0aGlzLmRyb3B6b25lLm9wdGlvbnMudGh1bWJuYWlsLmNhbGwodGhpcy5kcm9wem9uZSwgbW9ja0ZpbGUsIHZhbCkKICAgICAgICBtb2NrRmlsZS5wcmV2aWV3RWxlbWVudC5jbGFzc0xpc3QuYWRkKCdkei1zdWNjZXNzJykKICAgICAgICBtb2NrRmlsZS5wcmV2aWV3RWxlbWVudC5jbGFzc0xpc3QuYWRkKCdkei1jb21wbGV0ZScpCiAgICAgIH0KICAgIH0KCiAgfQp9Cg=="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;AAOA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA","file":"index.vue","sourceRoot":"src/components/Dropzone","sourcesContent":["<template>\n <div :id=\"id\" :ref=\"id\" :action=\"url\" class=\"dropzone\">\n <input type=\"file\" name=\"file\">\n </div>\n</template>\n\n<script>\nimport Dropzone from 'dropzone'\nimport 'dropzone/dist/dropzone.css'\n// import { getToken } from 'api/qiniu';\n\nDropzone.autoDiscover = false\n\nexport default {\n props: {\n id: {\n type: String,\n required: true\n },\n url: {\n type: String,\n required: true\n },\n clickable: {\n type: Boolean,\n default: true\n },\n defaultMsg: {\n type: String,\n default: '上传图片'\n },\n acceptedFiles: {\n type: String,\n default: ''\n },\n thumbnailHeight: {\n type: Number,\n default: 200\n },\n thumbnailWidth: {\n type: Number,\n default: 200\n },\n showRemoveLink: {\n type: Boolean,\n default: true\n },\n maxFilesize: {\n type: Number,\n default: 2\n },\n maxFiles: {\n type: Number,\n default: 3\n },\n autoProcessQueue: {\n type: Boolean,\n default: true\n },\n useCustomDropzoneOptions: {\n type: Boolean,\n default: false\n },\n defaultImg: {\n default: '',\n type: [String, Array]\n },\n couldPaste: {\n type: Boolean,\n default: false\n }\n },\n data() {\n return {\n dropzone: '',\n initOnce: true\n }\n },\n watch: {\n defaultImg(val) {\n if (val.length === 0) {\n this.initOnce = false\n return\n }\n if (!this.initOnce) return\n this.initImages(val)\n this.initOnce = false\n }\n },\n mounted() {\n const element = document.getElementById(this.id)\n const vm = this\n this.dropzone = new Dropzone(element, {\n clickable: this.clickable,\n thumbnailWidth: this.thumbnailWidth,\n thumbnailHeight: this.thumbnailHeight,\n maxFiles: this.maxFiles,\n maxFilesize: this.maxFilesize,\n dictRemoveFile: 'Remove',\n addRemoveLinks: this.showRemoveLink,\n acceptedFiles: this.acceptedFiles,\n autoProcessQueue: this.autoProcessQueue,\n dictDefaultMessage: '<i style=\"margin-top: 3em;display: inline-block\" class=\"material-icons\">' + this.defaultMsg + '</i><br>Drop files here to upload',\n dictMaxFilesExceeded: '只能一个图',\n previewTemplate: '<div class=\"dz-preview dz-file-preview\"> <div class=\"dz-image\" style=\"width:' + this.thumbnailWidth + 'px;height:' + this.thumbnailHeight + 'px\" ><img style=\"width:' + this.thumbnailWidth + 'px;height:' + this.thumbnailHeight + 'px\" data-dz-thumbnail /></div> <div class=\"dz-details\"><div class=\"dz-size\"><span data-dz-size></span></div> <div class=\"dz-progress\"><span class=\"dz-upload\" data-dz-uploadprogress></span></div> <div class=\"dz-error-message\"><span data-dz-errormessage></span></div> <div class=\"dz-success-mark\"> <i class=\"material-icons\">done</i> </div> <div class=\"dz-error-mark\"><i class=\"material-icons\">error</i></div></div>',\n init() {\n const val = vm.defaultImg\n if (!val) return\n if (Array.isArray(val)) {\n if (val.length === 0) return\n val.map((v, i) => {\n const mockFile = { name: 'name' + i, size: 12345, url: v }\n this.options.addedfile.call(this, mockFile)\n this.options.thumbnail.call(this, mockFile, v)\n mockFile.previewElement.classList.add('dz-success')\n mockFile.previewElement.classList.add('dz-complete')\n vm.initOnce = false\n return true\n })\n } else {\n const mockFile = { name: 'name', size: 12345, url: val }\n this.options.addedfile.call(this, mockFile)\n this.options.thumbnail.call(this, mockFile, val)\n mockFile.previewElement.classList.add('dz-success')\n mockFile.previewElement.classList.add('dz-complete')\n vm.initOnce = false\n }\n },\n accept: (file, done) => {\n /* 七牛*/\n // const token = this.$store.getters.token;\n // getToken(token).then(response => {\n // file.token = response.data.qiniu_token;\n // file.key = response.data.qiniu_key;\n // file.url = response.data.qiniu_url;\n // done();\n // })\n done()\n },\n sending: (file, xhr, formData) => {\n // formData.append('token', file.token);\n // formData.append('key', file.key);\n vm.initOnce = false\n }\n })\n\n if (this.couldPaste) {\n document.addEventListener('paste', this.pasteImg)\n }\n\n this.dropzone.on('success', file => {\n vm.$emit('dropzone-success', file, vm.dropzone.element)\n })\n this.dropzone.on('addedfile', file => {\n vm.$emit('dropzone-fileAdded', file)\n })\n this.dropzone.on('removedfile', file => {\n vm.$emit('dropzone-removedFile', file)\n })\n this.dropzone.on('error', (file, error, xhr) => {\n vm.$emit('dropzone-error', file, error, xhr)\n })\n this.dropzone.on('successmultiple', (file, error, xhr) => {\n vm.$emit('dropzone-successmultiple', file, error, xhr)\n })\n },\n destroyed() {\n document.removeEventListener('paste', this.pasteImg)\n this.dropzone.destroy()\n },\n methods: {\n removeAllFiles() {\n this.dropzone.removeAllFiles(true)\n },\n processQueue() {\n this.dropzone.processQueue()\n },\n pasteImg(event) {\n const items = (event.clipboardData || event.originalEvent.clipboardData).items\n if (items[0].kind === 'file') {\n this.dropzone.addFile(items[0].getAsFile())\n }\n },\n initImages(val) {\n if (!val) return\n if (Array.isArray(val)) {\n val.map((v, i) => {\n const mockFile = { name: 'name' + i, size: 12345, url: v }\n this.dropzone.options.addedfile.call(this.dropzone, mockFile)\n this.dropzone.options.thumbnail.call(this.dropzone, mockFile, v)\n mockFile.previewElement.classList.add('dz-success')\n mockFile.previewElement.classList.add('dz-complete')\n return true\n })\n } else {\n const mockFile = { name: 'name', size: 12345, url: val }\n this.dropzone.options.addedfile.call(this.dropzone, mockFile)\n this.dropzone.options.thumbnail.call(this.dropzone, mockFile, val)\n mockFile.previewElement.classList.add('dz-success')\n mockFile.previewElement.classList.add('dz-complete')\n }\n }\n\n }\n}\n</script>\n\n<style scoped>\n .dropzone {\n border: 2px solid #E5E5E5;\n font-family: 'Roboto', sans-serif;\n color: #777;\n transition: background-color .2s linear;\n padding: 5px;\n }\n\n .dropzone:hover {\n background-color: #F6F6F6;\n }\n\n i {\n color: #CCC;\n }\n\n .dropzone .dz-image img {\n width: 100%;\n height: 100%;\n }\n\n .dropzone input[name='file'] {\n display: none;\n }\n\n .dropzone .dz-preview .dz-image {\n border-radius: 0px;\n }\n\n .dropzone .dz-preview:hover .dz-image img {\n transform: none;\n filter: none;\n width: 100%;\n height: 100%;\n }\n\n .dropzone .dz-preview .dz-details {\n bottom: 0px;\n top: 0px;\n color: white;\n background-color: rgba(33, 150, 243, 0.8);\n transition: opacity .2s linear;\n text-align: left;\n }\n\n .dropzone .dz-preview .dz-details .dz-filename span, .dropzone .dz-preview .dz-details .dz-size span {\n background-color: transparent;\n }\n\n .dropzone .dz-preview .dz-details .dz-filename:not(:hover) span {\n border: none;\n }\n\n .dropzone .dz-preview .dz-details .dz-filename:hover span {\n background-color: transparent;\n border: none;\n }\n\n .dropzone .dz-preview .dz-remove {\n position: absolute;\n z-index: 30;\n color: white;\n margin-left: 15px;\n padding: 10px;\n top: inherit;\n bottom: 15px;\n border: 2px white solid;\n text-decoration: none;\n text-transform: uppercase;\n font-size: 0.8rem;\n font-weight: 800;\n letter-spacing: 1.1px;\n opacity: 0;\n }\n\n .dropzone .dz-preview:hover .dz-remove {\n opacity: 1;\n }\n\n .dropzone .dz-preview .dz-success-mark, .dropzone .dz-preview .dz-error-mark {\n margin-left: -40px;\n margin-top: -50px;\n }\n\n .dropzone .dz-preview .dz-success-mark i, .dropzone .dz-preview .dz-error-mark i {\n color: white;\n font-size: 5rem;\n }\n</style>\n"]}]}
|