Vue中的vue-resource示例详解


Posted in Javascript onNovember 02, 2018

vue-resource特点

vue-resource插件具有以下特点:

1. 体积小 vue-resource非常小巧,在压缩以后只有大约12KB,服务端启用gzip压缩后只有4.5KB大小,这远比jQuery的体积要小得多。

2. 支持主流的浏览器 和Vue.js一样,vue-resource除了不支持IE 9以下的浏览器,其他主流的浏览器都支持。

3. 支持Promise API和URI Templates Promise是ES6的特性,Promise的中文含义为“先知”,Promise对象用于异步计算。 URI Templates表示URI模板,有些类似于ASP.NET MVC的路由模板。

4. 支持拦截器 拦截器是全局的,拦截器可以在请求发送前和发送请求后做一些处理。拦截器在一些场景下会非常有用,比如请求发送前在headers中设置access_token,或者在请求失败时,提供共通的处理方式。

下面通过示例看下Vue中的vue-resource一起看看吧

  • 版本:vue-resource v1.2.1
  • 作用:

  Vue与后台Api进行交互通常是利用vue-resource来实现的,本质上vue-resource是通过http来完成AJAX请求相应的。

用法:

  Vue实例对象注册this.$http服务,可以发送HTTP请求。解析请求所返回的结果。此外,Vue实例将会自定绑定到this所在的回调函数中。

{
 // GET /someUrl
 this.$http.get('/someUrl').then(response => {
  // success callback
 }, response => {
  // error callback
 });
}

快捷方法列表

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

配置信息命令

Vue中的vue-resource示例详解

响应

Vue中的vue-resource示例详解

源码

下面我将以get请求访问json文件的方式来展示vue-resource的用法。

html中的源码

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>vue-router</title>
</head>
<body>
  <div id="app">
    <ul>
      <li v-for="item in list">{{item.name}}</li>
    </ul>
    <button @click="getData">get请求</button>
  </div>
<script src="../../../js/vue/vue/1.0/vue.js"></script>
<script src="../../../js/vue/vue-resource/1.2.1/vue-resource.js"></script>
<script type="application/javascript">
  var vm = new Vue({
    el:'#app'
    ,data:{
      list:[]
    }
    ,methods:{
      getData(){
        var url = '../json/get.json';
        this.$http.get(url).then(function(res){
          var body = res.body;
          if(body.status){
            alert('请求出错!');
          }
          this.list = body.message;
        });
      }
    }
  });
</script>
</body>
</html>

json文件中的源码

{
 "status":0
 ,"message":[
  {
   "id":1
   ,"name":"张三"
  }
  ,{
   "id":2
   ,"name":"李四"
  }
 ]
}

结果

Vue中的vue-resource示例详解

分析

上面的代码实现的功能是在页面中通过点击button按钮来触发一个getData的click响应事件,而该事件实现的功能是发送一个url请求(尽管说其请求的是本地的json文件数据,不过其请求后台的方法和该方法是一模一样的,所以说其用于请求后台的数据也是同样的用法。),该请求返回url链接所响应的数据。而该返回数据将会在then()回调函数中进行相应的处理,比如说我们的json文件中就返回了status响应状态码,其中0代表成功,否则失败。而一旦响应成功,则调用body.message,将相应的数据主体绑定到data数据域中的list中,由于list中的数据有变动,因而Vue会自定的刷新li的v-for中的页面信息,进而完成页面信息的更新操作。

总结

以上所述是小编给大家介绍的Vue中的vue-resource示例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
由prototype_1.3.1进入javascript殿堂-类的初探
Nov 06 Javascript
20款非常优秀的 jQuery 工具提示插件 推荐
Jul 15 Javascript
JavaScript模拟深蓝vs卡斯帕罗夫的国际象棋对局示例
Apr 22 Javascript
Css3制作变形与动画效果
Jul 24 Javascript
Bootstrap每天必学之滚动监听
Mar 16 Javascript
微信小程序 向左滑动删除功能的实现
Mar 10 Javascript
jQuery 添加样式属性的优先级别方法(推荐)
Jun 08 jQuery
JavaScript实现简单的双色球(实例讲解)
Jul 31 Javascript
基于BootStrap的文本编辑器组件Summernote
Oct 27 Javascript
jQuery实现的淡入淡出图片轮播效果示例
Aug 29 jQuery
vue安装和使用scss及sass与scss的区别详解
Oct 15 Javascript
微信小程序模板消息限制实现无限制主动推送的示例代码
Aug 27 Javascript
微信小程序实现列表页的点赞和取消点赞功能
Nov 02 #Javascript
React如何解决fetch跨域请求时session失效问题
Nov 02 #Javascript
element ui table 增加筛选的方法示例
Nov 02 #Javascript
Vue请求JSON Server服务器数据的实现方法
Nov 02 #Javascript
详解使用element-ui table组件的筛选功能的一个小坑
Nov 02 #Javascript
如何使用vuex实现兄弟组件通信
Nov 02 #Javascript
JavaScript 复制对象与Object.assign方法无法实现深复制
Nov 02 #Javascript
You might like
玩家交还《星际争霸》原始码光盘 暴雪报以厚礼
2017/05/05 星际争霸
支持中文的php加密解密类代码
2011/11/27 PHP
优化PHP程序的方法小结
2012/02/23 PHP
php 使用GD库为页面增加水印示例代码
2014/03/24 PHP
php命令行用法入门实例教程
2014/10/27 PHP
thinkphp使用literal防止模板标签被解析的方法
2014/11/22 PHP
php下的原生ajax请求用法实例分析
2020/02/28 PHP
js控制的回到页面顶端goTop的代码实现
2013/03/20 Javascript
实现动画效果核心方式的js代码
2013/09/27 Javascript
js+html5通过canvas指定开始和结束点绘制线条的方法
2015/06/05 Javascript
JavaScript AOP编程实例
2015/06/16 Javascript
JavaScript中几种排序算法的简单实现
2015/07/29 Javascript
javascript实现表单验证
2016/01/29 Javascript
jQuery插件FusionCharts绘制2D环饼图效果示例【附demo源码】
2017/04/10 jQuery
easyui下拉框动态级联加载的示例代码
2017/11/29 Javascript
Vue 页面切换效果之 BubbleTransition(推荐)
2018/04/08 Javascript
使用imba.io框架得到比 vue 快50倍的性能基准
2019/06/17 Javascript
JQuery样式与属性设置方法分析
2019/12/07 jQuery
[56:48]FNATIC vs EG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
栈和队列数据结构的基本概念及其相关的Python实现
2015/08/24 Python
Python中查看文件名和文件路径
2017/03/31 Python
python实现逐个读取txt字符并修改
2018/12/24 Python
python脚本实现音频m4a格式转成MP3格式的实例代码
2019/10/09 Python
英国在线自行车商店:Evans Cycles
2016/09/26 全球购物
YOINS官网:时尚女装网上购物
2017/03/17 全球购物
北欧最好的童装网上商店:Babyshop
2019/09/15 全球购物
某个公司的Java笔面试题
2016/03/11 面试题
培训主管岗位职责
2014/02/01 职场文书
尊师重教演讲稿
2014/09/04 职场文书
行风评议整改报告
2014/11/06 职场文书
忠犬八公的故事观后感
2015/06/05 职场文书
单独二胎证明
2015/06/24 职场文书
研讨会致辞
2015/07/31 职场文书
家属联谊会致辞
2015/07/31 职场文书
创业计划书之水果店
2019/07/18 职场文书
解析目标检测之IoU
2021/06/26 Python