用vue.js做异步请求的方法:首先在项目中安装axiox;然后在main.js中引入axiox,以供全局使用;接着进行axios get请求;最后实现axios post请求即可。
本教程操作环境:windows7系统、vue2.0版本、thinkpad t480电脑。
推荐:《vue教程》
用vue.js做异步请求
一、axios实现异步请求
立即学习“前端免费学习笔记(深入)”;
1.项目中安装axiox
npm install --save axios
登录后复制
2.在main.js中引入以供全局使用
import axios from 'axios'//可以给axios的ajax请求设置统一的主机和端口号axios.defaults.baseURL = "http://157.122.54.189:8080/";//将axios这个对象添加到Vue的原型对象中,在使用的时候就只需要使用this.对象名就可以了Vue.prototype.$http = axios
登录后复制
3.axios之get请求
vue前端:
export default { methods:{ getData(){ //axios-get请求 this.$http.get('/getData1') .then(r => console.log(r))//接口调用成功返回的数据 .catch(err => console.log(err)),//接口调用失败返回的数据 } } mounted(){//模板或el对应的html渲染完成后再调用里面的方法 this.getData() }}node后端:server.get('/getData1',function(req,res){ res.send({ 'msg':'aaa' })})
登录后复制
请求结果:
4.axios之post请求
Vue前端:
提交参数的两种形态:
// 1.可以直接传入字符串 name=张三&age=19// 2.可以以对象的形式传入{name:“三”,age:19}export default { methods:{ getData(){ //axios-post请求传值 this.$http({ method:"post", url:"/getData2", headers:{ 'Content-type': 'application/x-www-form-urlencoded' }, data:{ name:'xxx' }, transformRequest: [function (data) {//更改传值格式 let ret = '' for (let it in data) { ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&' } return ret.slice(0,ret.length-1) }], }) .then(r => console.log(r)) .catch(err => console.log(err)) } } mounted(){//模板或el对应的html渲染完成后再调用里面的方法 this.getData() }}
登录后复制
node后端:
server.post('/getData2',function(req,res){ req.on("data",function(data){ console.log(querystring.parse(decodeURIComponent(data))); }); res.send({ 'msg':'bbb' })})
登录后复制
二、vue-resource实现异步请求(和axios步骤基本相同)
1.项目中安装vue-resource
npm install --save vue-resource
登录后复制
2.在main.js中引入以供全局使用
import vueResource from 'vue-resource'Vue.use(vueResource)//这儿有所不同
登录后复制
3.vue-resource之get请求
this.$http.get('/getData1') .then(r => console.log(r))//接口调用成功返回的数据 .catch(err => console.log(err)),//接口调用失败返回的数据
登录后复制
4.vue-resource之post请求
this.$http.post('/getData2',{name:"bbb"}) .then(r => console.log(r))//接口调用成功返回的数据 .catch(err => console.log(err)),//接口调用失败返回的数据
登录后复制
以上就是怎么用vue.js做异步请求的详细内容,更多请关注【创想鸟】其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。
发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3021190.html