当前位置:   article > 正文

Vue使用vue-simple-uploader上传文件夹_uploader-unsupport

uploader-unsupport

Vue使用vue-simple-uploader上传文件夹

先睹为快

  • 1 点击上传“上传文件夹”按钮
  •  

  • 2 选择文件夹
  • 3 确定上传
  •  

  • 4 上传进度
  •  

引入控件

  • install

 

npm install vue-simple-uploader --save
  • main.js配置

 

  1. import uploader from 'vue-simple-uploader'
  2. Vue.use(uploader)

vue部分

  • 页面

 

  1. <div>
  2. <uploader :key="uploader_key" :options="options" class="uploader-example"
  3. @file-success="onFileSuccess">
  4. <uploader-unsupport></uploader-unsupport>
  5. <uploader-drop>
  6. <uploader-btn :directory="true" :single="true">选择文件夹</uploader-btn>
  7. </uploader-drop>
  8. <uploader-list></uploader-list>
  9. </uploader>
  10. </div>
  • 数据

 

  1. data() {
  2. return {
  3. uploader_key: new Date().getTime(),//这个用来刷新组件--解决不刷新页面连续上传的缓存上传数据(注:每次上传时,强制这个值进行更改---根据自己的实际情况重新赋值)
  4. options: {
  5. target: '/uploadCategory',//SpringBoot后台接收文件夹数据的接口
  6. testChunks: false//是否分片-不分片
  7. },
  8. };
  9. },
  • 方法

 

  1. onFileSuccess: function (rootFile, file, response, chunk) {
  2. //这里可以根据response(接口)返回的数据处理自己的实际问题(如:从response拿到后台返回的想要的数据进行组装并显示)
  3. //注,这里从文件夹每上传成功一个文件会调用一次这个方法
  4. }
  • 样式

 

  1. <style>
  2. .uploader-example {
  3. width: 90%;
  4. padding: 15px;
  5. margin: 40px auto 0;
  6. font-size: 12px;
  7. box-shadow: 0 0 10px rgba(0, 0, 0, .4);
  8. }
  9. .uploader-example .uploader-btn {
  10. margin-right: 4px;
  11. }
  12. .uploader-example .uploader-list {
  13. max-height: 440px;
  14. overflow: auto;
  15. overflow-x: hidden;
  16. overflow-y: auto;
  17. }
  18. </style>

SpringBoot部分

  • 接收文件夹,后续操作

 

  1. @ResponseBody
  2. @RequestMapping("/uploadCategory")
  3. public void uploadCategory(HttpServletRequest request,
  4. @RequestParam("file") MultipartFile[] file)
  5. if (file != null && file.length > 0) {
  6. for (MultipartFile temp : file) {
  7. //处理上传的文件
  8. //其他逻辑
  9. }
  10. }
  11. }
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/66645
推荐阅读