全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

详解vue-Resource(与后端数据交互)

单来说,vue-resource就像jQuery里的$.ajax,用来和后端交互数据的。可以放在created或者ready里面运行来获取或者更新数据...

vue-resource文档:https://github.com/vuejs/vue-resource/blob/master/docs/http.md

结合vue-router

data(){
    return{
      toplist:[],
      alllist:[]
    }
  },
  //vue-router
  route:{
    data({to}){
      //并发请求,利用 Promise 
      return Promise.all([
        //简写
        this.$http.get('http://192.168.30.235:9999/rest/knowledge/list',{'websiteId':2,'pageSize':5,'pageNo':1,'isTop':1}),
        //this.$http.get('http://192.168.30.235:9999/rest/knowledge/list',{'websiteId':2,'pageSize':20,'pageNo':1,'isTop':0})
        //不简写
        this.$http({
          method:'GET',
          url:'http://192.168.30.235:9999/rest/knowledge/list',
          data:{'websiteId':2,'pageSize':20,'pageNo':1,'isTop':0},
          headers: {"X-Requested-With": "XMLHttpRequest"},
          emulateJSON: true
          })
        ]).then(function(data){//es5写法
           return{
            toplist:data[0].data.knowledgeList,
            alllist:data[1].data.knowledgeList
          }
        //es6写法 .then()部分
        //.then(([toplist,alllist])=>({toplist,alllist})) 
      },function(error){
        //error
      })
    }
  }

在其他地方使用

ready(){
    var that=this;
    var websiteid = 2,
      pagesize = 20,
      pageno =1; 
    that.$http({
      method:'GET',
      url:'http://192.168.30.235:9999/rest/knowledge/list',
      data:{'websiteId':websiteid,'pageSize':pagesize,'pageNo':pageno,'isTop':0}
    }).then(function(data){
      //赋值给alllist数组,
      that.$set('alllist',data.data.knowledgeList)
    })
    //简写
    /*that.$http.get('http://192.168.30.235:9999/knowledge/list',{'websiteId':2,'pageSize':20,'pageNo':1,'isTop':0}).then(function(response){
      that.$set('alllist',response.data.knowledgeList)
    })*/
  }

若定义全部变量(在data()中定义),使用$get()获取

data(){
    return{
      toplist:[],
      alllist:[],
      websiteid:2,
      pagesize:20,
      pageno:1
    }
  },
ready(){
    var that=this;
    that.$http({
      method:'GET',
      url:'http://192.168.30.235:9999/rest/knowledge/list',
      //使用定义的全局变量 用$get()获取
      data:{'websiteId':that.$get('websiteid'),'pageSize':that.$get('pagesize'),'pageNo':that.$get('pageno'),'isTop':0}
    }).then(function(data){
      //赋值给alllist数组,
      that.$set('alllist',data.data.knowledgeList)
    },function(error){
      //error
     })
  }

 post方式同理

将数据绑定到dom上

<ul>
  <li v-for="item in alllist" v-if="item.istop == false">
    <a v-link="{ name: 'getReceiptDetail',params:{knowledgeId: item.id }}">
      <div class='fl know-info'>
          <!-- | limit 和 | timer是filter 在后续会说到-->
          <!--字段含义: -->
        <p class='font-normal nomal-height'>{{item.title | limit 30 }}</p>         
          <p class='co9a9a9a' ><span style='margin-right: 1rem;'>{{item.viewTimes}}K</span><span>{{item.publishTime | timer }}</span></p> <!--viewTimes:有多少人查看 , publishTime:发布时间-->
      </div>
      <div class='fr know-img'>
        <img v-bind:src=item.coverImage />
      </div>
      <div class='clearfix'></div>
    </a>
  </li>
</ul>

在vue-validator中做post示例 , 将接口请求地址定义为全局详见VUEX

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


# vue和后端交互  # vue-Resource  # vue前后端交互  # vuejs前后端数据交互之从后端请求数据的实例  # vue.js前后端数据交互之提交数据操作详解  # Vue使用json-server进行后端数据模拟功能  # vue+vuecli+webpack中使用mockjs模拟后端数据的示例  # vue2.0 axios前后端数据处理实例代码  # 详解vue与后端数据交互(ajax):vue-resource  # vue+element开发一个谷歌插件的全过程  # 使用vue-element-admin框架从后端动态获取菜单功能的实现  # vue+elementUI组件递归实现可折叠动态渲染多级侧边栏导航  # Vue Element前端应用开发之获取后端数据  # 发布时间  # 放在  # 就像  # 说到  # 有多少人  # 绑定  # 大家多多  # 中做  # 后端  # 全局变量  # 文档  # websiteId  # isTop  # pageNo  # pageSize  # list  # knowledge  # rest  # XMLHttpRequest  # Requested 


相关文章: 建站之星安装步骤有哪些常见问题?  如何在Golang中使用encoding/gob序列化对象_存储和传输数据  天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?  如何在腾讯云服务器上快速搭建个人网站?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  婚礼视频制作网站,学习*后期制作的网站有哪些?  网站代码制作软件有哪些,如何生成自己网站的代码?  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  如何快速搭建高效服务器建站系统?  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  c++怎么实现高并发下的无锁队列_c++ std::atomic原子变量与CAS操作【详解】  外贸公司网站制作哪家好,maersk船公司官网?  C++如何将C风格字符串(char*)转换为std::string?(代码示例)  香港服务器租用每月最低只需15元?  教程网站设计制作软件,怎么创建自己的一个网站?  建站之星后台管理系统如何操作?  网站制作软件免费下载安装,有哪些免费下载的软件网站?  零基础网站服务器架设实战:轻量应用与域名解析配置指南  如何基于PHP生成高效IDC网络公司建站源码?  如何用花生壳三步快速搭建专属网站?  PHP正则匹配日期和时间(时间戳转换)的实例代码  建站之星下载版如何获取与安装?  简历在线制作网站免费,免费下载个人简历的网站是哪些?  如何基于云服务器快速搭建个人网站?  宝塔新建站点报错如何解决?  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  深圳网站制作平台,深圳市做网站好的公司有哪些?  制作充值网站的软件,做人力招聘为什么要自己交端口钱?  建站三合一如何选?哪家性价比更高?  建站上传速度慢?如何优化加速网站加载效率?  建站主机无法访问?如何排查域名与服务器问题  建站DNS解析失败?如何正确配置域名服务器?  如何通过免费商城建站系统源码自定义网站主题与功能?  高防服务器租用指南:配置选择与快速部署攻略  小型网站制作HTML,*游戏网站怎么搭建?  建站之星CMS建站配置指南:模板选择与SEO优化技巧  利用JavaScript实现拖拽改变元素大小  官网建站费用明细查询_企业建站套餐价格及收费标准指南  招贴海报怎么做,什么是海报招贴?  教学网站制作软件,学习*后期制作的网站有哪些?  建站之星代理费用多少?最新价格详情介绍  c# 在高并发场景下,委托和接口调用的性能对比  定制建站模板如何实现SEO优化与智能系统配置?18字教程  网站制作企业,网站的banner和导航栏是指什么?  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  定制建站价位费用解析与套餐推荐全攻略  安徽网站建设与外贸建站服务专业定制方案  北京营销型网站制作公司,可以用python做一个营销推广网站吗?  如何在Windows环境下新建FTP站点并设置权限? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。