FormData文件提交

提交方法:

接口经常要用到FormData提交文件,就记录一下

实现:new一个FormData类型,append如文件,提交的时候给接口请求头加上'Content-Type': 'multipart/form-data'

upData(file){
  const form = new FormData()
  form.append(
'file',file.raw)   this.ajax.post(`/admin/miniApp/conf/mchCertUpload`, form, { 'Content-Type': 'multipart/form-data' } )
}

文件提交样式:

html

复制代码
    <el-upload
                        class="upload_wrap"
                        :auto-upload="false"
                        drag
                        action="#"
                        multiple
                        :on-change="
                            e => {
                                return fileListChange(e, 'bannerUrl')
                            }
                        "
                        :show-file-list="false"
                    >
                        <i v-if="!addForm.bannerUrl" class="el-icon-upload"></i>
                        <div v-if="!addForm.bannerUrl" class="el-upload__text">
                            {{ $t('batchImport.descF') }}
                            <em>{{ $t('batchImport.descS') }}</em>
                        </div>
                        <el-image class="editImg" v-if="addForm.bannerUrl" :src="addForm.bannerUrl"></el-image>
                    </el-upload>
复制代码

css

复制代码
// 附件上传
.upload_wrap {
    text-align: center;
    .el-upload-dragger {
        background-color: transparent;
        width: 100%;
        height: 195px;
        // color: #fff;
        @include file_border(#d9d9d9);
        &:hover {
            @include input_border(#111111);
        }
    }
    .el-upload__text {
        @include input_placeholder(#ffffff);
    }
    .el-upload__tip,
    .el-upload-list {
        text-align: left;
        padding-left: 30px;
    }
    .el-upload__tip {
        color: #999999;
        font-size: 12px;
    }
}
.editImg {
    width: 100%;
    height: 100%;
}
复制代码

效果

 

 列表展示图片

html

复制代码
    <el-table-column show-overflow-tooltip prop="bannerUrl" :label="$t('banner.bannerUrl')">
                    <template slot-scope="scope">
                        <el-image
                            v-if="scope.row.bannerUrl"
                            class="rowImg"
                            :src="scope.row.bannerUrl"
                            :preview-src-list="[scope.row.bannerUrl]"
                        ></el-image>
                    </template>
                </el-table-column>
复制代码

css

.rowImg {
    width: 100px;
    height: 100px;
}

效果

 

posted @   Pavetr  阅读(435)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
点击右上角即可分享
微信分享提示