vue中项目如何提交form格式数据的表单

 更新时间:2022年06月02日 09:54:29   作者:雾横  
这篇文章主要介绍了vue中项目如何提交form格式数据的表单,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

vue提交form格式数据的表单

先将数据处理

let formData = new FormData();
for(let key in this.telForm){
     formData.append(key,this.telForm[key]);
}

数据上传

//采用封装的post方法上传
this.postRequest('web/login/mobile',formData).then(res=>{
   console.log(res)
})
//或者采用普通的axios方法上传
axios({
  method:"post",
  url:"web/login/mobile",
  headers: {
    "Content-Type": "multipart/form-data"
  },
  withCredentials:true,
  data: formData
}).then((res)=>{
  console.log(res);
 });

封装文件

//封装的方法
import axios from 'axios';
import {Message} from "element-ui";
import router from "../router";
/**
 * 错误消息统一显示方法
 * 封装请求方法,只负责提示错误信息,如果失败返回空值null,如果成功,返回后端接口传输的数据
 */
axios.interceptors.response.use(success=>{
    //如果返回服务端自定义异常
    if (success.status && success.status === 200 && success.data.status === 500) {
        Message.error({message: success.data.message})
        return;
    }
    //如果存在自定义属性message,则打印出来
    if (success.data.message) {
        Message.success({message: success.data.message})
    }
    //请求200 , 服务端自定义属性status200 , 没有相应信息 , 则直接返回数据
    return success.data;
} , error => {
    if (error.response.status===504||error.response.status===404){
        Message.error({message: "服务器被吃了( ╯□╰ )"})
    }else if (error.response.status === 403) {
        Message.error({message: "权限不足哦"})
    }else if (error.response.status === 401) {
        Message.error({message: "先登录哦亲"});
        router.replace("/");
        //未知的请求错误
    }else {
        if (error.response.data.message) {
            Message.error({message: error.response.data.message})
        } else {
            Message.error({message: '未知错误!'})
        }
    }
    //返回空值代表有错误
    return ;
});
//定义url前缀
let base = '';
//post方法封装
export const  postRequest = (url,params)=>{
    return axios({
        method: 'post',
        url : `${base}${url}`,
        data: params
    });
};

vue form表单最简写法

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <script src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.js"></script>
  <title>vue</title>
</head>
<body>
  <div id="app">
    <form @submit.prevent="submitPost">
      <input type="text" name="name">
      <input type="password" name="pass">
      <div>
        <input type="checkbox" name="ischeckbox">
        <input type="radio" name="isradio">
        <div>
          <input type="mail" name="mail">
          <div>
            <input type="file" name="img">
          </div>
        </div>
      </div>
      <input type="submit" value="提交">
    </form>
  </div>
  <script>
  const app = new Vue({
      el: '#app',
      data: {
      },
      methods: {
        submitPost(event) {
          const formData = new FormData(event.target)
          for (let [a, b] of formData) {
            console.log('所有表单填写的内容:'+ a, b);
          }
        }
      }
  });
  </script>
</body>
</html>

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue粘贴复制功能的实现过程记录

    vue粘贴复制功能的实现过程记录

    最近在项目中遇到点击按钮复制链接功能,所以这篇文章主要给大家介绍了关于vue粘贴复制功能的实现过程,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-03-03
  • 一文带你搞懂V8垃圾回收系统

    一文带你搞懂V8垃圾回收系统

    在V8中,JavaScript的内存空间分为栈(Stack)和堆(Heap)两部分,垃圾回收的基本思路是:查找内存中的所有变量,看哪些已经不再需要,然后释放这些变量所占用的内存,本文就给大家梳理一下V8垃圾回收系统,需要的朋友可以参考下
    2023-07-07
  • Vue.js3.2的vnode部分优化升级使用示例详解

    Vue.js3.2的vnode部分优化升级使用示例详解

    这篇文章主要为大家介绍了Vue.js3.2的vnode部分优化升级使用示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • iview同时验证多个表单问题总结

    iview同时验证多个表单问题总结

    这篇文章主要介绍了iview同时验证多个表单问题总结,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • 如何启动一个Vue.js项目

    如何启动一个Vue.js项目

    这篇文章主要介绍了如何启动一个Vue.js项目,对Vue.js感兴趣的同学,可以参考下
    2021-04-04
  • vue使用element实现上传图片和修改图片功能

    vue使用element实现上传图片和修改图片功能

    前几天做到一个关于图片上传功能,下面这篇文章主要给大家介绍了关于vue使用element实现上传图片和修改图片功能的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • 详解webpack打包vue项目之后生成的dist文件该怎么启动运行

    详解webpack打包vue项目之后生成的dist文件该怎么启动运行

    这篇文章主要介绍了详解webpack打包vue项目之后生成的dist文件该怎么启动运行,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • vue结合element-ui使用示例

    vue结合element-ui使用示例

    这一篇主要是创建一个vue项目并结合饿了么框架element-ui的文章。文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • vue 页面跳转的实现方式

    vue 页面跳转的实现方式

    这篇文章主要介绍了vue 页面跳转的实现方式,帮助大家更好的理解和使用vue,感兴趣的朋友可以了解下
    2021-01-01
  • vue开发简单上传图片功能

    vue开发简单上传图片功能

    这篇文章主要为大家详细介绍了vue开发简单上传图片功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06

最新评论