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 相关文章推荐
dojo 之基础篇
Mar 24 Javascript
基于jquery的一个OutlookBar类,动态创建导航条
Nov 19 Javascript
ie6下png图片背景不透明的解决办法使用js实现
Jan 11 Javascript
浅谈JavaScript中指针和地址
Jul 26 Javascript
input点击后placeholder中的提示消息消失
Jan 15 Javascript
JS中常用的输出方式(五种)
Jun 12 Javascript
jQuery Ajax 实现在html页面实时显示用户登录状态
Dec 30 Javascript
jquery DataTable实现前后台动态分页
Jun 17 jQuery
vue组件生命周期详解
Nov 07 Javascript
从零开始搭建webpack+react开发环境的详细步骤
May 18 Javascript
node 版本切换的实现
Feb 02 Javascript
JavaScript仿京东秒杀倒计时
Mar 17 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
索尼SONY ICF-7600A(W)电路分析
2021/03/01 无线电
php array_intersect()函数使用代码
2009/01/14 PHP
将CMYK颜色值和RGB颜色相互转换的PHP代码
2014/07/28 PHP
PHP+MYSQL会员系统的开发实例教程
2014/08/23 PHP
手把手教你自己写一个js表单验证框架的方法
2010/09/14 Javascript
javascript getElementsByClassName实现代码
2010/10/11 Javascript
javascript中DOM复选框选择用法实例
2015/05/14 Javascript
javascript实现显示和隐藏div方法汇总
2015/08/14 Javascript
JavaScript中windows.open()、windows.close()方法详解
2016/07/28 Javascript
JavaScript中的this引用(推荐)
2016/08/05 Javascript
函数四种调用模式以及其中的this指向
2017/01/16 Javascript
AngularJS中$http使用的简单介绍
2017/03/17 Javascript
如何编写一个完整的Angular4 FormText 组件
2017/11/18 Javascript
分享ES6的7个实用技巧
2018/01/18 Javascript
JavaScript使用表单元素验证表单的示例代码
2019/08/20 Javascript
vue项目中常见问题及解决方案(推荐)
2019/10/21 Javascript
Python实现登录接口的示例代码
2017/07/21 Python
django在接受post请求时显示403forbidden实例解析
2018/01/25 Python
用xpath获取指定标签下的所有text的实例
2019/01/02 Python
python通过配置文件共享全局变量的实例
2019/01/11 Python
Python可变和不可变、类的私有属性实例分析
2019/05/31 Python
python启动应用程序和终止应用程序的方法
2019/06/28 Python
关于python3.7安装matplotlib始终无法成功的问题的解决
2020/07/28 Python
html5/css3响应式页面开发总结
2018/10/16 HTML / CSS
高档奢华时装在线目的地:FORWARD by elyse walker
2017/10/16 全球购物
Sunglasses Shop瑞典:欧洲领先的太阳镜网上商店
2018/04/22 全球购物
运动服饰每月订阅盒:Ellie
2018/04/29 全球购物
英国IT硬件供应商,定制游戏PC:Mesh Computers
2019/03/28 全球购物
工作室成员个人发展规划范文
2014/01/24 职场文书
2015年班长个人工作总结
2015/04/03 职场文书
超市收银员岗位职责
2015/04/07 职场文书
Mysql - 常用函数 每天积极向上
2021/04/05 MySQL
React forwardRef的使用方法及注意点
2021/06/13 Javascript
2021年国产动漫公司排行前十名,玄机科技上榜,第二推出过铠甲勇士
2022/03/18 杂记
mysql中关键词exists的用法实例详解
2022/06/10 MySQL
Win10此设备不支持接收Miracast无法投影的解决方法
2022/07/07 数码科技