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获取窗口(容器)的大小及位置参数列举及简要说明
Dec 09 Javascript
jQuery模拟超链接点击效果代码
Apr 21 Javascript
JavaScript实现Flash炫光波动特效
May 14 Javascript
JS实现先显示大图后自动收起显示小图的广告代码
Sep 04 Javascript
深入浅析Extjs中store分组功能的使用方法
Apr 20 Javascript
jQuery获取select选中的option的value值实现方法
Aug 29 Javascript
微信小程序(六):列表上拉加载下拉刷新示例
Jan 13 Javascript
js实现简单的手风琴效果
Feb 27 Javascript
fckeditor部署到weblogic出现xml无法读取及样式不能显示问题的解决方法
Mar 24 Javascript
详解Layer弹出层样式
Aug 21 Javascript
微信小程序 按钮滑动的实现方法
Sep 27 Javascript
JS+DIV实现拖动效果
Feb 11 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
php5中类的学习
2008/03/28 PHP
php将字符串全部转换成大写或者小写的方法
2015/03/17 PHP
PHP 自动加载的简单实现(推荐)
2016/08/12 PHP
php实现的SSO单点登录系统接入功能示例分析
2016/10/12 PHP
删除PHP数组中头部、尾部、任意元素的实现代码
2017/04/10 PHP
php 可变函数使用小结
2018/06/12 PHP
菜单效果
2006/10/14 Javascript
XENON基于JSON变种
2010/07/27 Javascript
JavaScript之编码规范 推荐
2012/05/23 Javascript
jquery div 居中技巧应用介绍
2012/11/24 Javascript
nodejs调用cmd命令实现复制目录
2015/05/04 NodeJs
JavaScript获得url查询参数的方法
2015/07/02 Javascript
js实现简洁大方的二级下拉菜单效果代码
2015/09/01 Javascript
浅析nodejs实现Websocket的数据接收与发送
2015/11/19 NodeJs
总结十个Angular.js由浅入深的面试问题
2016/08/26 Javascript
JavaScript数组去重的6个方法
2017/01/21 Javascript
Vue.js实战之组件的进阶
2017/04/04 Javascript
Javascript别踩白块儿(钢琴块儿)小游戏实现代码
2017/07/20 Javascript
详解nodejs通过响应回写的方式渲染页面资源
2018/04/07 NodeJs
JavaScript实现的文本框placeholder提示文字功能示例
2018/07/25 Javascript
Vue scoped及deep使用方法解析
2020/08/01 Javascript
echarts饼图各个板块之间的空隙如何实现
2020/12/01 Javascript
jquery实现图片放大镜效果
2020/12/23 jQuery
python异步任务队列示例
2014/04/01 Python
python 把文件中的每一行以数组的元素放入数组中的方法
2018/04/29 Python
python制作简单五子棋游戏
2019/06/18 Python
Python底层封装实现方法详解
2020/01/22 Python
读取nii或nii.gz文件中的信息即输出图像操作
2020/07/01 Python
浅析Python的命名空间与作用域
2020/11/25 Python
python装饰器代码深入讲解
2021/03/01 Python
商业房地产广告语
2014/03/13 职场文书
品牌推广策划方案
2014/05/28 职场文书
公安机关查摆剖析材料
2014/10/10 职场文书
中学推普周活动总结
2015/05/07 职场文书
《怀念母亲》教学反思
2016/02/19 职场文书
用Python仅20行代码编写一个简单的端口扫描器
2022/04/08 Python