vue小项目总结与笔记【六】——使用axios发送ajax请求

 

Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。

安装:

npm install axios --save

 

引入:

import axios from 'axios'

 

使用:

在methods里定义获取方法和成功后执行方法,在mounted生命周期钩子里执行获取方法

methods: {
        // 获取方法
        getHomeInfo () {
            axios.get('/api/index.json?city=' + this.city)
                .then(this.getHomeInfoSucc)
        },
        // 成功后执行的方法
        getHomeInfoSucc (res) {
            res = res.data
            if (res.ret && res.data) {
                const data = res.data
                this.swiperList = data.swiperList
                this.iconList = data.iconList
                this.recommendList = data.recommendList
                this.weekendList = data.weekendList
            }
        }
    },
    // 一个生命周期钩子 HTMl挂载到页面完成后执行  一般用于ajax请求
    mounted () {
        this.lastCity = this.city
        this.getHomeInfo()
    }  

 

前期自己模拟后端数据的时候(数据放在static/mock),需要修改一些参数:

在config/index.js里找到dev里的proxyTable,作如下修改:

 proxyTable: {
      '/api': {
        // 请求api目录的时候,转发到'http://localhost:8080
        target: 'http://localhost:8080',
        // 路径替换  api => /static/mock/
        pathRewrite: {
          '^/api': '/static/mock/'
        }
      }
    }  

         //请求地址以api开头,就请求到本地的mock目录

 

改动配置项后,需要重启服务器!

 
posted on 2019-03-19 13:41  Ashe蓝  阅读(398)  评论(0编辑  收藏  举报