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 相关文章推荐
JS继承 笔记
Jul 13 Javascript
JavaScript子窗口ModalDialog中操作父窗口对像
Dec 11 Javascript
JS保留两位小数,多位小数的示例代码
Jan 07 Javascript
让浏览器DOM元素最后加载的js方法
Jul 29 Javascript
Ajax局部更新导致JS事件重复触发问题的解决方法
Oct 14 Javascript
jQuery实现购物车数字加减效果
Mar 14 Javascript
JS得到当前时间的方法示例
Mar 24 Javascript
JS代码实现电脑配置检测功能
Mar 21 Javascript
vue实现组件之间传值功能示例
Jul 13 Javascript
JS数组方法shift()、unshift()用法实例分析
Jan 18 Javascript
JS实现简易贪吃蛇游戏
Aug 24 Javascript
vue实现input输入模糊查询的三种方式
Aug 14 Vue.js
微信小程序实现列表页的点赞和取消点赞功能
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
dedecms系统的广告设置代码 基础版本
2010/04/09 PHP
说说PHP的autoLoad自动加载机制
2012/09/27 PHP
PHP编码规范的深入探讨
2013/06/06 PHP
浅析关于PHP位运算的简单权限设计
2013/06/30 PHP
PHP把小数转成整数3种方法
2014/06/30 PHP
使用PHPCMS搭建wap手机网站
2015/09/20 PHP
既简单又安全的PHP验证码 附调用方法
2016/06/02 PHP
PHP 布尔值的自增与自减的实现方法
2018/05/03 PHP
腾讯的ip接口 方便获取当前用户的ip地理位置
2010/11/25 Javascript
js实现鼠标划过给div加透明度的方法
2015/05/25 Javascript
jQuery on()方法绑定动态元素的点击事件实例代码浅析
2016/06/16 Javascript
检查表单元素的值是否为空的实例代码
2016/06/16 Javascript
微信小程序 MINA文件结构
2016/10/17 Javascript
JavaScript用200行代码制作打飞机小游戏实例
2017/06/21 Javascript
详解从Vue-router到html5的pushState
2018/07/21 Javascript
JS实现数组删除指定元素功能示例
2019/06/05 Javascript
为react组件库添加typescript类型提示的方法
2020/06/15 Javascript
Jquery使用each函数实现遍历及数组处理
2020/07/14 jQuery
vue自定义树状结构图的实现方法
2020/10/18 Javascript
Python中zip()函数用法实例教程
2014/07/31 Python
Python合并两个字典的常用方法与效率比较
2015/06/17 Python
Python基于二分查找实现求整数平方根的方法
2016/05/12 Python
python-opencv颜色提取分割方法
2018/12/08 Python
Python如何用filter函数筛选数据
2020/03/05 Python
Pycharm2020最新激活码|永久激活(附最新激活码和插件的详细教程)
2020/09/29 Python
详解CSS3中的box-sizing(content-box与border-box)
2019/04/19 HTML / CSS
美国第二大连锁药店:Rite Aid
2019/04/03 全球购物
介绍一下javax.servlet.Servlet接口及其主要方法
2015/11/30 面试题
护士演讲稿范文
2014/01/05 职场文书
《蒲公英》教学反思
2014/02/28 职场文书
学员自我鉴定
2014/03/19 职场文书
党员公开承诺书范文
2014/03/25 职场文书
媒体宣传策划方案
2014/05/25 职场文书
青年教师师德演讲稿
2014/08/26 职场文书
2015年公务员个人工作总结
2015/04/24 职场文书
宾馆客房管理制度
2015/08/06 职场文书