vue入门(二) 让axios发送表单形式数据

 

(一) 使用 axios vue-axios qs

 

 1.qs是必不可少的插件

npm install --save axios vue-axios qs

2.安装完成后,在main.js插入以下代码

//载入axios
import Qs from 'qs'
import axios from 'axios'
import VueAxios from 'vue-axios'
var axios_instance = axios.create({
baseURL:'http://localhost', //自行修改url
transformRequest: [function (data) {
data = Qs.stringify(data);
return data;
}],
headers:{'Content-Type':'application/x-www-form-urlencoded'}
})
Vue.use(VueAxios, axios_instance)

 

3.在vue模块中可以这样使用

this.$http.post('url', {
id:1
}).then(response => {
console.log(response)
}).catch( error => {
console.log(error);
});

 

(二)

1.安装axios

npm install axios  --save 
 
2.在main.js插入以下代码
import axios from 'axios'
 
axios.defaults.baseURL = 'http://localhost:xxx/api/'; 
Vue.prototype.$http = axios;
 
3. axios 在组件中使用
  不带参数:
this.$http.post('TableList/TableLoad').then(response => {
 
}, response => {
 
})
   formData形式上传数据:
  let fd = new FormData();
  fd.append('file', file);//这里上传的是一个图片文件,以base64传递
  this.$http.post('fileupload/FileUpLoad',fd,{
    headers:{
    'Content-Type':'multipart/form-data'   //hearder 很重要,Content-Type 要写对
    }
  }).then(response => {
 
  }
  }, response => {
 
  })

转载于:https://www.cnblogs.com/zhuzy/p/7991770.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用axios提交表单数据的步骤如下: 1. 在Vue组件中引入axios库: ``` import axios from 'axios'; ``` 2. 定义表单数据并绑定到Vue组件的data属性中: ``` data() { return { formData: { name: '', email: '', message: '' } } } ``` 3. 定义一个提交表单数据的方法: ``` methods: { onSubmit() { axios.post('/api/form-data', this.formData) .then(response => { console.log(response.data); }) .catch(error => { console.log(error); }); } } ``` 4. 在HTML模板中使用`v-model`指令绑定表单数据: ``` <form @submit.prevent="onSubmit"> <label>Name:</label> <input type="text" v-model="formData.name"> <label>Email:</label> <input type="email" v-model="formData.email"> <label>Message:</label> <textarea v-model="formData.message"></textarea> <button type="submit">Submit</button> </form> ``` 5. 当用户提交表单时,调用`onSubmit`方法发送POST请求,将表单数据作为第个参数传递给`axios.post`方法。 注意:如果您使用了表单文件上传,则需要使用`FormData`对象来处理表单数据。您可以使用以下代码: ``` onSubmit() { const formData = new FormData(); formData.append('name', this.formData.name); formData.append('email', this.formData.email); formData.append('message', this.formData.message); formData.append('file', this.$refs.fileInput.files[0]); axios.post('/api/form-data', formData) .then(response => { console.log(response.data); }) .catch(error => { console.log(error); }); } ``` 其中,`$refs.fileInput`是一个引用到文件上传输入框的组件引用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值