form表单提交(包含文件)

主要是提交事件 里边包含文件 怎样向后台提交文件

 

 

<el-form :model="ImpForm" enctype='multipart/form-data'>

<el-form-item label="Excel文件" :label-width="formLabelWidth">

<el-input v-model="ImpForm.name" autocomplete="off"></el-input>

<el-upload

class="upload-demo"

ref="upload"

:on-change="cert_path_file"

:file-list="ImpForm.cert_path"

:http-request="handleFile"

:multiple="false"

:limit="1"

action="@/views/bankBillUp">

<el-button slot="trigger" size="small" type="primary" @click="clearUploadedImage('upload')">浏览</el-button>

<el-button type="primary" @click="DownloadTemp">下载导入模板</el-button>

<div slot="tip" class="el-upload__tip">请选择需要导入的文件</div>

</el-upload>

</el-form-item>

<el-form-item>

<el-button @click="dialogFormVisible = false">取 消</el-button>

<el-button type="primary" @click="onSubmit">提 交</el-button>

</el-form-item>

</el-form>

 

 

 

 

ImpForm: {

name: '',

cert_path: [],

file:{}

},

 

 

// 导入 浏览 上传 on-change事件

cert_path_file (file,fileList) {

console.log(file.raw)

// 上传组件 on-change 事件

this.ImpForm.file = file.raw

this.ImpForm.name = file.name;

},

handleFile(){},

// 重新选择文件时,清空文件列表

clearUploadedImage (type) {

// 重新选择文件时清空文件列表

if (type === 'upload') {

this.$refs.upload.clearFiles();

this.cert_path = [];

}

},

// 导入提交事件;

onSubmit(val){

let config = {

headers: {

'Content-Type': 'multipart/form-data'

}

}

var formdata = new FormData();

formdata.append('file',this.ImpForm.file);

apiSubmit(formdata,config).then(response => {

console.log(response)

if (response && response.data) {

this.ImpForm.name = ""

}

}).catch()

this.dialogFormVisible = false;

},

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,使用form表单提交文件到后端,可以按照以下步骤操作: 1. 在前端HTML页面中,使用form标签定义一个表单,设置enctype属性为"multipart/form-data",表示表单数据包含文件上传的二进制数据。 2. 在表单中添加一个input标签,设置type属性为"file",表示上传文件的输入框。 3. 在表单中添加一个submit按钮,点击时提交表单数据到后端。 4. 在后端接收表单数据时,需要使用相应的框架或库进行解析和处理。比如使用express框架时,可以使用multer中间件处理文件上传,代码如下: ``` const express = require('express'); const multer = require('multer'); const app = express(); // 配置multer中间件处理文件上传 const storage = multer.diskStorage({ destination: function (req, file, cb) { cb(null, 'uploads/') // 上传文件保存的目录 }, filename: function (req, file, cb) { cb(null, Date.now() + '-' + file.originalname) // 上传文件保存的文件名 } }) const upload = multer({ storage: storage }) // 处理文件上传的请求 app.post('/upload', upload.single('file'), (req, res) => { console.log(req.file) // req.file包含上传的文件信息 res.send('文件上传成功!') }) app.listen(3000, () => { console.log('服务器已启动...') }) ``` 以上代码中,通过multer.diskStorage()方法配置文件上传的保存目录和文件名,然后使用multer()方法创建一个中间件upload,用于处理文件上传的请求。在app.post()方法中,使用upload.single()方法指定上传文件的字段名,然后在回调函数中输出req.file对象,该对象包含上传文件的信息。最后使用res.send()方法返回上传成功的消息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值