如何检查文件类型是否是 vue.js 中指定的文件类型(图像)?

Moh*_*ari 2 vue.js

你好。我想检查我的输入文件类型是否为 jpg。我使用了'vee-validate',这很好,但我喜欢做的就像我根据教程对文件大小所做的一样。

这是代码:

<input type="file" @change="updateMelliCodeFrontScan" name="mellicode_front_url" class="form-input" >
Run Code Online (Sandbox Code Playgroud)

这是Vue方法:

updateMelliCodeFrontScan(e){
            // console.log('uploading');
            let file = e.target.files[0];
            let reader = new FileReader();
            // let vm = this;
            if (file['size'] < 200000){

                    reader.onloadend = (file) => {
                        // console.log('RESULT', reader.result)
                        this.form.mellicode_front_url = reader.result;
                    }
                    reader.readAsDataURL(file);
            }else
            {
                swal({
                    type: 'error',
                    title: 'Size limited.',
                    text: 'size limit',
                })
            }
},
Run Code Online (Sandbox Code Playgroud)

所以我想这样做:

=> i want to make another if for file type base on extension/type like file['type']. 

i used file['type'] === jpg and didn't worked.
if (file['size'] < 200000){

                    reader.onloadend = (file) => {
                        // console.log('RESULT', reader.result)
                        this.form.mellicode_front_url = reader.result;
                    }
                    reader.readAsDataURL(file);
            }else
            {
                swal({
                    type: 'error',
                    title: 'Size limited.',
                    text: 'size limit',
                })
}
Run Code Online (Sandbox Code Playgroud)

Pat*_*tik 8

这是因为它在 file[0] 中返回 image/jpeg

if(files[0]['type']==='image/jpeg')
Run Code Online (Sandbox Code Playgroud)

试试这个它的工作原理。

  • 试试这个文件[0]['type']==='image/jpeg' || 文件[0]['type']==='image/png' (3认同)