1.封装获取时间方法。

        getTimes(file) {
            var content = file;
            //获取录音时长
            var url = URL.createObjectURL(content);
            //经测试,发现audio也可获取视频的时长
            var audioElement = new Audio(url);
            audioElement.addEventListener("loadedmetadata", (_event) => {
               //保存获取时间长度
                this.dataFile.videoTime = parseInt(audioElement.duration)
            });
        },

2.再upload上传之前拿到上传的file文件,调用方法。

        //上传之前的操作
        // file.type.includes 文件类型判断
        beforeAvatarUpload(file) {
            if (file.type.includes('image')) {
                const isLt2M = file.size / 1024 / 1024 < 2;
                if (!isLt2M) {
                    this.$message.error('上传图片大小不能超过 2MB!');
                    this.isok = false
                } else {
                    this.isok = true
                    this.updataimg.fileKey = this.utypeTexe
                }

            }
            if (file.type.includes('video')) {
                this.getTimes(file)
                const isLt2M = file.size / 1024 / 1024 < 500;
                if (!isLt2M) {
                    this.$message.error('上传视频大小不能超过 500MB!');
                    this.isok = false
                } else {
                    this.isok = true
                    this.updataimg.fileKey = this.utypeTexe
                }
                
            }

            if (file.type.includes('audio')) {
                this.getTimes(file)
                const isLt2M = file.size / 1024 / 1024 < 500;
                if (!isLt2M) {
                    this.$message.error('上传音频大小不能超过 500MB!');
                    this.isok = false
                } else {
                    this.isok = true
                    this.updataimg.fileKey = this.utypeTexe
                }
                
            }
        },

GitHub 加速计划 / eleme / element
15
3
下载
A Vue.js 2.0 UI Toolkit for Web
最近提交(Master分支:3 个月前 )
c345bb45 1 年前
a07f3a59 * Update transition.md * Update table.md * Update transition.md * Update table.md * Update transition.md * Update table.md * Update table.md * Update transition.md * Update popover.md 1 年前
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐