首页 > 解决方案 > 在 vuetify laravel 中上传音频文件

问题描述

刚开始将 vuetify.js 和 vue.js 与 laravel 一起使用,我正在尝试创建一个表单,用户可以在其中提交任何类型的音频文件(.mp3 等),但由于 vue 和 vuetify 都没有文件输入还没有,几乎每个论坛帖子都只为图像输入文件,我还没有弄清楚这个,我正在使用 jquery ajax 提交我的表单。我的 HTML:

<template>
    <div class="uploader">
        <div class="upload-control">
            <label for="file">Select a file</label>
        </div>
        <div>
            <i class="fa fa-cloud-upload"></i>
            <div class="file-input">
                <input type="file" id="file" @change="onInputChange" multiple>
            </div>
        </div>
    </div>
</template>

剧本:

onInputChange(e) {
    this.form.music.push(e.target.files);
},

最后提交:

submit: function(){
    $.ajax({
        dataType: 'json',
        headers:{'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
        type:"POST",
        url:"{!! route('submit')!!}",
        data:{form:this.form},
        processData:true,
        cache: false,
        contentType: false,
    }).done(response=>{
        this.notify("Submitted successfully!","success");
    })
},

每次我尝试提交控制台返回时:

TypeError:非法调用。

任何帮助将不胜感激!

(顺便说一句,我尝试过使用 npm 模块,但我无法让它在 Laravel 中工作,正如我所说,这在 javascript 中有点像菜鸟。)

标签: javascriptphplaravelvue.jsvuetify.js

解决方案


推荐阅读