Vue2学习笔记之请求数据交互vue-resource


Posted in Javascript onFebruary 23, 2017

基本语法

必须引入一个库:vue-resource github地址

// 基于全局Vue对象使用http 
Vue.http.get('/someUrl', [options]).then(successCallback, errorCallback);
Vue.http.post('/someUrl', [body], [options]).then(successCallback, errorCallback);

// 在一个Vue实例内使用$http 
this.$http.get('/someUrl', [options]).then(successCallback, errorCallback);
this.$http.post('/someUrl', [body], [options]).then(successCallback, errorCallback);

 vue-resource的请求API是按照REST风格设计的,它提供了7种请求API:

  • get(url, [options])
  • head(url, [options])
  • delete(url, [options])
  • jsonp(url, [options])
  • post(url, [body], [options])
  • put(url, [body], [options])
  • patch(url, [body], [options])

Options

Parameter Type Description
url string 请求的UR
body Object, FormData, string request body
headers Object request header
params Object 请求的URL参数对象
method string 请求的HTTP方法,例如:'GET', 'POST'或其他HTTP方法
timeout number 单位为毫秒的请求超时时间 (0 表示无超时时间)
before function(request) 请求发送前的处理函数,类似于jQuery的beforeSend函数
progress function(event) ProgressEvent回调处理函数
credentials boolean 表示跨域请求时是否需要使用凭证
emulateHTTP boolean 发送PUT, PATCH, DELETE请求时以HTTP POST的方式发送,并设置请求头的X-HTTP-Method-Override
emulateJSON boolean 将request body以application/x-www-form-urlencoded content type发送

1. 向文本发出get请求

准备一个1.txt 的文本数据,时面的内容是:welcomet to vue!!!

<!DOCTYPE html>
<html>
<head>
 <title></title>
 <meta charset="utf-8">
 <script src="http://unpkg.com/vue/dist/vue.js"></script>
 <script src="http://files.cnblogs.com/files/zycbloger/vue-resource.min.js"></script>
 <script type="text/javascript">
  window.onload = function(){
   var vm = new Vue({
    el:'#box',
    data:{
     msg:'Hello World!',
    },
    methods:{
     get:function(){
      //发送get请求
      this.$http.get('1.txt').then(function(res){
       alert(res.body); 
      },function(){
       alert('请求失败处理'); //失败处理
      });
     }
    }
   });
  }
 </script>
</head>
<body> 
 <div id="box">
  <input type="button" @click="get()" value="按钮">
 </div>
</body>
</html>

上面代码实现了,点击按钮,就发送get请求,成功就会执行弹窗 welcomet to vue!!!

2. 关于向后端请求,并带参数的写法

<!DOCTYPE html>
<html>
<head>
 <title></title>
 <meta charset="utf-8">
 <script src="http://unpkg.com/vue/dist/vue.js"></script>
 <script src="http://files.cnblogs.com/files/zycbloger/vue-resource.min.js"></script>
 <script type="text/javascript">
  window.onload = function(){
   var vm = new Vue({
    el:'#box',
    data:{
     msg:'Hello World!',
    },
    methods:{
     get:function(){
      //发送get请求
      this.$http.get('get.do',{a:1,b:2}).then(function(res){
       alert(res.body); 
      },function(){
       alert('请求失败处理'); //失败处理
      });
     },

     post:function(){
      //发送post请求
      this.$http.post('post.do',{a:1,b:2}).then(function(res){
       alert(res.body); 
      },function(){
       alert('请求失败处理'); //失败处理
      });
     }
    }
   });
  }
 </script>
</head>
<body> 
 <div id="box">
  <input type="button" @click="get()" value="按钮get">
  <input type="button" @click="post()" value="按钮post">
 </div>
</body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript 动态生成方法的例子
Jul 22 Javascript
JS实现两表格里数据来回转移的方法
May 28 Javascript
AngularJS上拉加载问题解决方法
May 23 Javascript
JS判断日期格式是否合法的简单实例
Jul 11 Javascript
jQuery flip插件实现的翻牌效果示例【附demo源码下载】
Sep 20 Javascript
基于JS脚本语言的基础语法详解
Jul 22 Javascript
利用node.js爬取指定排名网站的JS引用库详解
Jul 25 Javascript
JS中跳出循环的示例代码
Sep 14 Javascript
讲解vue-router之什么是嵌套路由
May 28 Javascript
node实现分片下载的示例代码
Oct 17 Javascript
使用pkg打包ThinkJS项目的方法步骤
Dec 30 Javascript
ant design 日期格式化的实现
Oct 27 Javascript
JavaScript基本类型值-Undefined、Null、Boolean
Feb 23 #Javascript
Javascript 链式作用域详细介绍
Feb 23 #Javascript
jQuery的三种bind/One/Live/On事件绑定使用方法
Feb 23 #Javascript
bootstrap weebox 支持ajax的模态弹出框
Feb 23 #Javascript
COM组件中调用JavaScript函数详解及实例
Feb 23 #Javascript
Bootstrap3 多个模态对话框无法显示的解决方案
Feb 23 #Javascript
Bootstrap modal 多弹窗之叠加显示不出弹窗问题的解决方案
Feb 23 #Javascript
You might like
php截取字符串并保留完整xml标签的函数代码
2013/02/06 PHP
详解PHP对数组的定义以及数组的创建方法
2015/11/27 PHP
PHP在弹框中获取foreach中遍历的id值并传递给地址栏
2017/06/13 PHP
启用OPCache提高PHP程序性能的方法
2019/03/21 PHP
关于PHP5.6+版本“No input file specified”问题的解决
2019/12/11 PHP
Laravel框架源码解析之反射的使用详解
2020/05/14 PHP
Add Formatted Text to a Word Document
2007/06/15 Javascript
jquery验证表单中的单选与多选实例
2013/08/18 Javascript
JavaScript的字符串方法汇总
2016/07/31 Javascript
使用BootStrap进行轮播图的制作
2017/01/06 Javascript
Node.js Mongodb 密码特殊字符 @的解决方法
2017/04/11 Javascript
angular2 ng2 @input和@output理解及示例
2017/10/10 Javascript
Node.js文件编码格式的转换的方法
2018/04/27 Javascript
浅谈在vue中使用mint-ui swipe遇到的问题
2018/09/27 Javascript
微信小程序新手教程之页面打开数量限制
2019/03/03 Javascript
详解JavaScript中精度失准问题及解决方法
2020/02/04 Javascript
Vue中keep-alive 实现后退不刷新并保持滚动位置
2020/03/17 Javascript
vue路由分文件拆分管理详解
2020/08/13 Javascript
[06:50]DSPL次级职业联赛十强晋级之路
2014/11/18 DOTA
[46:58]完美世界DOTA2联赛PWL S3 Forest vs LBZS 第一场 12.17
2020/12/19 DOTA
Python使用pylab库实现画线功能的方法详解
2017/06/08 Python
Python引用传值概念与用法实例小结
2017/10/07 Python
ubuntu环境下python虚拟环境的安装过程
2018/01/07 Python
python tkinter canvas 显示图片的示例
2019/06/13 Python
Python3连接Mysql8.0遇到的问题及处理步骤
2020/02/17 Python
使用Python爬取弹出窗口信息的实例
2020/03/14 Python
python能在浏览器能运行吗
2020/06/17 Python
Python爬虫之Selenium实现关闭浏览器
2020/12/04 Python
大学生求职简历的自我评价
2013/10/14 职场文书
文秘专业应届生求职信范文
2013/11/14 职场文书
《老山界》教学反思
2014/04/08 职场文书
年终考核实施方案
2014/05/26 职场文书
农村党支部书记四风问题个人对照检查材料
2014/09/21 职场文书
幼儿园2014年度工作总结
2014/11/10 职场文书
2015年综治宣传月活动总结
2015/03/25 职场文书
2015年会计个人工作总结
2015/04/02 职场文书