全网整合营销服务商

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

免费咨询热线: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 


相关文章: 番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?  ,在苏州找工作,上哪个网站比较好?  已有域名和空间如何快速搭建网站?  如何彻底卸载建站之星软件?  如何快速查询网站的真实建站时间?  建站主机无法访问?如何排查域名与服务器问题  PHP正则匹配日期和时间(时间戳转换)的实例代码  c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】  北京的网站制作公司有哪些,哪个视频网站最好?  如何在服务器上三步完成建站并提升流量?  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  制作网页的网站有哪些,电脑上怎么做网页?  PHP 500报错的快速解决方法  ,sp开头的版面叫什么?  C++如何将C风格字符串(char*)转换为std::string?(代码示例)  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  兔展官网 在线制作,怎样制作微信请帖?  如何在Windows服务器上快速搭建网站?  免费公司网站制作软件,如何申请免费主页空间做自己的网站?  c# 服务器GC和工作站GC的区别和设置  学校为何禁止电信移动建设网站?  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  建站之星如何助力网站排名飙升?揭秘高效技巧  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  如何快速搭建二级域名独立网站?  详解jQuery停止动画——stop()方法的使用  网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?  如何选择高效可靠的多用户建站源码资源?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  已有域名如何快速搭建专属网站?  定制建站流程步骤详解:一站式方案设计与开发指南  如何快速搭建高效WAP手机网站吸引移动用户?  建站之星安装路径如何正确选择及配置?  七夕网站制作视频,七夕大促活动怎么报名?  网站制作报价单模板图片,小松挖机官方网站报价?  专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?  南京网站制作费用,南京远驱官方网站?  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?  如何零基础在云服务器搭建WordPress站点?  如何制作网站标识牌,动态网站如何制作(教程)?  浅谈Javascript中的Label语句  家庭建站与云服务器建站,如何选择更优?  建设网站制作价格,怎样建立自己的公司网站?  自助网站制作软件,个人如何自助建网站?  如何有效防御Web建站篡改攻击?  如何通过免费商城建站系统源码自定义网站主题与功能?  C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换  如何实现建站之星域名转发设置?  建站之星与建站宝盒如何选择最佳方案? 

您的项目需求

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