utils.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. import { __awaiter } from "tslib";
  2. import { DageUploadType } from "./types";
  3. /**
  4. * 可选文件类型
  5. */
  6. export const ACCEPT = {
  7. [DageUploadType.IMG]: ".jpg,.jpeg,.png,.gif",
  8. [DageUploadType.MOBILE_MODEL]: ".zip",
  9. [DageUploadType.MODEL]: ".4dage",
  10. [DageUploadType.VIDEO]: ".mp4",
  11. [DageUploadType.AUDIO]: ".mp3",
  12. };
  13. /**
  14. * 校验文件类型
  15. */
  16. export const validateFileType = (file, accept) => {
  17. if (accept === "*")
  18. return true;
  19. const fileName = file.name.toLowerCase();
  20. const fileExtension = fileName.substring(fileName.lastIndexOf("."));
  21. return accept.split(",").includes(fileExtension);
  22. };
  23. export function getImageSize(file) {
  24. return __awaiter(this, void 0, void 0, function* () {
  25. return new Promise((resolve, reject) => {
  26. const img = new Image();
  27. img.onload = () => {
  28. resolve({ width: img.width, height: img.height });
  29. };
  30. img.onerror = (err) => {
  31. reject(err);
  32. };
  33. img.src = URL.createObjectURL(file);
  34. });
  35. });
  36. }