领峰UI库,封装一些经常使用到的组件,自定义样式,模块化js函数,调用简单快速上手。
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

35 lines
908 B

  1. // base64 转为文件类型
  2. function dataURLtoFile(dataurl, filename = 'file') {
  3. let arr = dataurl.split(',')
  4. let mime = arr[0].match(/:(.*?);/)[1]
  5. let suffix = mime.split('/')[1]
  6. let bstr = atob(arr[1])
  7. let n = bstr.length
  8. let u8arr = new Uint8Array(n)
  9. while (n--) {
  10. u8arr[n] = bstr.charCodeAt(n)
  11. }
  12. return new File([u8arr], `${filename}.${suffix}`, {
  13. type: mime
  14. })
  15. }
  16. // 转成图片文件,使用时可以这样传参进入
  17. // var imgFile = dataURLtoFile(base64Img);
  18. // 预览转出来的文件
  19. function previewImageFile(imgFile){
  20. const fileReader = new FileReader(); // 创建一个 fileReader
  21. fileReader.readAsDataURL(imgFile); // 将生成的图片文件读到 fileReader中
  22. const img = new Image();
  23. img.src = fileReader.result; // 将 fileReader.result 设置为 图片的 src
  24. document.body.appendChild(img);
  25. }
  26. module.exports = {
  27. dataURLtoFile,
  28. previewImageFile
  29. }