前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >10.请求数据

10.请求数据

作者头像
玩蛇的胖纸
发布2019-10-14 15:27:17
4140
发布2019-10-14 15:27:17
举报

在vue中,有三种常用的数据请求方式:

代码语言:javascript
复制
/*
三种数据请求方式
vue-resource
axios
fetch-jsonp
*/

1.vue-resource

1.安装vue-resource

代码语言:javascript
复制
cnpm install vue-resource --save

2.在src/main.js中引用

代码语言:javascript
复制
import VueResource from 'vue-resource';
Vue.use(VueResource)

 3.在组件中使用home.vue

代码语言:javascript
复制
<template>
    <div>
        <h2>这是一个首页组件</h2>
        <button @click="getData()">请求数据</button>
        <hr>
        <br>
        <ul>
          <li v-for="(item,index) in list" :key="index">{{item.title}}</li>
        </ul>
    </div>
</template>
<script>
/*
三种数据请求方式
vue-resource
axios
fetch-jsonp
*/
export default {
  name: 'home',  
  data () {
    return {
        msg:'首页组件',
        list:[]
    }
  },
  methods:{
    getData(){
      // 请求数据
      var api='http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20&page=1'
      var _self=this
      this.$http.get(api).then(
        function (response) {
          console.log(response)
          _self.list=response.data.result
        },
        function(err){
          console.log(err)
        }
      )
    }
  },
  components:{
  }

}
</script>
<style lang="scss" scoped>
h2{
    color: red;
}
</style>

2.axios

1.安装axios

代码语言:javascript
复制
cnpm install axios --save

 2.在组件中引入

使用箭头函数,不用担心this的指向

代码语言:javascript
复制
<template>
    <div>
        <h2>这是一个首页组件</h2>
        <button @click="getData()">请求数据</button>
        <hr>
        <br>
        <ul>
          <li v-for="(item,index) in list" :key="index">{{item.title}}</li>
        </ul>
    </div>
</template>
<script>
import Axios from 'axios';
export default {
  name: 'home',  
  data () {
    return {
        msg:'首页组件',
        list:[]
    }
  },
  methods:{
    getData(){
      // 请求数据
      var api='http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20&page=1'
      Axios.get(api).then((response)=>{console.log(response);this.list=response.data.result}).catch((err)=>{console.log(err)})
    }
  },
  components:{
  }

}
</script>
<style lang="scss" scoped>
h2{
    color: red;
}
</style>

 3.fetch-jsonp

使用方法与axios相同

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-10-13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 在vue中,有三种常用的数据请求方式:
    • 1.vue-resource
      • 1.安装vue-resource
      • 2.在src/main.js中引用
    •  3.在组件中使用home.vue
      • 2.axios
        • 1.安装axios
        •  2.在组件中引入
      •  3.fetch-jsonp
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档