Vue实现让页面加载时请求后台接口数据

 更新时间:2022年08月13日 11:06:08   作者:苍穹之跃  
这篇文章主要介绍了Vue实现让页面加载时请求后台接口数据

让页面加载时请求后台接口数据

<template>
  <div class="hello">
    <div>
      {{title}}
    </div>
    <hr>
    <button @click="convert">点击获取数据</button>
  </div>
</template>
<script>
  import axios from 'axios'
  export default {
    name: 'HelloWorld',
    data() {
      return {
        title: "静态数据"
      }
    },
    //在这里调用ajax请求方法
    created(){
      this.convert();
    },
    methods: {
      convert: function () {
        axios.get("api/sysUser/getSomething").then(res => {
          this.title = res.data;
        })
      }
    }
  }
</script>

Vue请求后台数据几种方式

常用的为:vue-resourceaxiosfetch-jsonp

1、vue-resource官方提供的vue的一个插件

①安装:在项目根目录进行安装:cnpm install vue-resource --save

save说明:将此插件名插入到pachage.json文件中,别人在使用时,直接npm install,就会安装package.json里的所配置的软件插件名称了。

②引入vue-resource

在main.js中引入这个插件,并使用这个插件

import VueResource from 'vue-resource'
Vue.use(VueResource );

③示例:

export default{
        data(){
            return {
 
                msg:'我是一个首页组件msg',
                flag:true,
                list:[]
            }
        },
        methods:{
 
            getData(){
                    //请求数据
 
                    var api='http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20&page=1'; 
 
                    this.$http.get(api).then((response)=>{
                        console.log(response);
 
                        //注意this指向 
                        this.list=response.body.result;   
                    },function(err){ 
                            console.log(err); 
                    })
            }
        },
        mounted(){  /*生命周期函数*/ 
                this.getData(); 
        }
    }

2、axios的使用

安装 cnpm  install  axios --save

哪里用哪里引入axios

import Axios from 'axios';
    export default{
        data(){
            return {               
                list:[]
            }
        },
        methods:{
 
            getData(){
                
                var api='http://www.phonegap100.com/appapi.php?a=getPortalList&catid=20&page=1';
                Axios.get(api).then((response)=>{
                    this.list=response.data.result;
                }).catch((error)=>{
                    console.log(error); 
                }) 
            }
        },
        mounted(){  /*生命周期函数*/
 
            this.getData();
        }      
    }

3、fetch-jsonp不受跨域限制

安装 cnpm i fetch-jsonp -S

用法:在项目中引入

import  fetchJsonp  from  fetch-jsonp
let domain=`http://api.douban.com/v2/movie/top250`
        fetch(this.domain,{
            start:0,
            count:20,
            method:'GET',
            mode:'no-cors'
        }).then(response=>{
            console.log(response)
            console.log(response.json())
            return response.json()
        }).then(res=>{
            console.log(res)
        }).catch(e=>{
            console.log(e)
        })

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。 

相关文章

  • vue el-tree 默认展开第一个节点的实现代码

    vue el-tree 默认展开第一个节点的实现代码

    这篇文章主要介绍了vue el-tree 默认展开第一个节点的实现代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • 基于Vue实例对象的数据选项

    基于Vue实例对象的数据选项

    下面小编就为大家带来一篇基于Vue实例对象的数据选项。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Vue简化用户查询/添加功能的实现

    Vue简化用户查询/添加功能的实现

    本文主要介绍了Vue简化用户查询/添加功能的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-01-01
  • vue打包使用Nginx代理解决跨域问题

    vue打包使用Nginx代理解决跨域问题

    这篇文章主要介绍了vue打包使用Nginx代理解决跨域问题,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08
  • 解决vue prop传值default属性如何使用,为何不生效的问题

    解决vue prop传值default属性如何使用,为何不生效的问题

    这篇文章主要介绍了解决vue prop传值default属性如何使用,为何不生效的问题。具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • 基于iview-admin实现动态路由的示例代码

    基于iview-admin实现动态路由的示例代码

    这篇文章主要介绍了基于iview-admin实现动态路由的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • 基于脚手架创建Vue项目实现步骤详解

    基于脚手架创建Vue项目实现步骤详解

    这篇文章主要介绍了基于脚手架创建Vue项目实现步骤详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • elementUI给el-tabs/el-tab-pane添加图标效果实例

    elementUI给el-tabs/el-tab-pane添加图标效果实例

    这篇文章主要给大家介绍了关于elementUI给el-tabs/el-tab-pane添加图标效果实例的相关资料,文中通过实例代码介绍的非常详细,对大家学习或者使用elementUI具有一定的参考学习价值,需要的朋友可以参考下
    2023-07-07
  • Vue和uniapp中该如何使用canvas详解

    Vue和uniapp中该如何使用canvas详解

    说起canvas是css3新增的标签,而饼状图又是canvas经典,我们公司现在正在用uni-app框架去研发APP,下面这篇文章主要给大家介绍了关于Vue和uniapp中该如何使用canvas的相关资料,需要的朋友可以参考下
    2022-10-10
  • vue移动端轻量级的轮播组件实现代码

    vue移动端轻量级的轮播组件实现代码

    这篇文章主要介绍了vue移动端轻量级的轮播组件实现代码,一个简单的移动端卡片滑动轮播组件,适用于Vue2.x。本文给大家带来了实例代码,需要的朋友参考下吧
    2018-07-07

最新评论