Vue--会员管理列表页面,抽取BASE_URL

简介: Vue--会员管理列表页面,抽取BASE_URL

会员管理页面接口调通


现在来开发我们的会员管理页面,我们获取会员数据的接口格式如下

{
    "code": "2001",
    "success": true,
    "msg": "",
    "total": 78,
    "data": [
        {
            "id": 30,
            "update_time": "2020-06-11 23:00:04",
            "create_time": "2020-06-11 23:00:04",
            "member_card": "123",
            "member_name": "是打算",
            "member_birthday": "1992-02-12",
            "phone_number": 17693638363,
            "card_money": 234234,
            "Available_integral": 342342,
            "pay_type": 1,
            "member_address": "甘肃省"
        },
        {
            "id": 29,
            "update_time": "2020-06-11 22:55:10",
            "create_time": "2020-06-11 22:55:10",
            "member_card": "123",
            "member_name": "温热",
            "member_birthday": "1992-02-12",
            "phone_number": 345634563456,
            "card_money": 21312,
            "Available_integral": 21312,
            "pay_type": 3,
            "member_address": "额我认为而我而我"
        },
    ]
}

在 src/api 下新建一个文件,叫 member.js ,将会员相关的接口都放在这个下面,但是现在有个问题,我们的 主机名和域名是在 src/login.js 里写的一个变量,不能引用到 member.js 里面,我们可以将变量提取出来,在 src/utils下创建一个common.js 的文件,写入如下代码

const baseurl = 'http://127.0.0.1:8081'
export default baseurl  // 导出自定义baseurl

这样我们就可以在其他地方引用这个变量了,如果想改,只需要改这一处就可以了

在member.js 里写如下代码

// 会员管理接口
import request from '@/utils/request'
import BASE_URL from '@/utils/common'
export default {
    // 获取会员列表数据
    getList(token){
        return request({
            url: BASE_URL +'/api/manage/member',
            method: 'get',
            headers:{
                "Authorization":"JWT "+token
            }
        })
    },
}

然后再 src/views/member/index下写如下代码

<template>
    <div>
    </div>
</template>
<script>
import memberApi from "@/api/member"
export default{
    created() {
        // 调接口请求数据,将调接口定义一个方法,在created里调用这个方法
        this.fetchData()
    },
    methods: {
        fetchData(){
            // 获取token
            const token = localStorage.getItem('zz-token')
            console.log(token)
            memberApi.getList(token).then( response=>{
                const res = response.data
                console.log(res)
            })
        }
    },
}
</script>

刷新页面,查看控制台是否可以输出数据


vue-router的bug


这样会有一个问题,当在点击会员管理时,会报如下错误

这是vuerouter的bug,只需要升级一下vue-router就可以了

npm i vue-router@3.0 -S

重启项目,多次点击也不会报错了


相关文章
|
3月前
|
存储 JavaScript
vue页面跳转取消上一个页面请求
本文介绍了在Vue中如何取消上一个页面的请求,以避免页面跳转时请求未完成导致的数据错误。核心方法是使用axios的请求拦截器设置请求的取消令牌(cancelToken),并在vuex中存储这些取消令牌的引用。当进行路由跳转时,通过路由守卫清除这些请求,达到取消上一个页面请求的目的。
156 2
|
25天前
|
存储 缓存 网络协议
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点,GET、POST的区别,Cookie与Session
计算机网络常见面试题(二):浏览器中输入URL返回页面过程、HTTP协议特点、状态码、报文格式,GET、POST的区别,DNS的解析过程、数字证书、Cookie与Session,对称加密和非对称加密
|
27天前
|
域名解析 缓存 网络协议
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
浏览器中输入URL返回页面过程(超级详细)、DNS域名解析服务,TCP三次握手、四次挥手
|
28天前
|
JavaScript
vue封装一个查询URL参数方法
通过以上步骤,我们在Vue.js项目中封装了一个查询URL参数的方法 `getQueryParam`,并在Vue组件中成功应用。这种封装方式不仅提高了代码的复用性,还使得代码更加清晰和易于维护。
14 1
|
29天前
|
JavaScript
vue封装一个查询URL参数方法
通过以上步骤,我们在Vue.js项目中封装了一个查询URL参数的方法 `getQueryParam`,并在Vue组件中成功应用。这种封装方式不仅提高了代码的复用性,还使得代码更加清晰和易于维护。
13 1
|
2月前
|
JavaScript API
vue尚品汇商城项目-day04【24.点击搜索按钮跳转后的页面商品列表、平台售卖属性动态展示(开发Search组件)】
vue尚品汇商城项目-day04【24.点击搜索按钮跳转后的页面商品列表、平台售卖属性动态展示(开发Search组件)】
59 1
vue尚品汇商城项目-day04【24.点击搜索按钮跳转后的页面商品列表、平台售卖属性动态展示(开发Search组件)】
|
1月前
|
JavaScript UED
"Vue实战技巧大揭秘:一招解决路由跳转页面不回顶部难题,让你的单页面应用用户体验飙升!"
【10月更文挑战第23天】在Vue单页面应用中,点击路由跳转时,默认情况下页面不会自动滚动到顶部,这可能影响用户体验。本文通过一个新闻网站的案例,介绍了如何使用Vue-router的全局前置守卫和`scrollBehavior`方法,实现路由跳转时页面自动滚动到顶部的功能,提升用户浏览体验。
60 0
|
2月前
|
JavaScript 前端开发 API
vue尚品汇商城项目-day04【28.详情页面Detail】
vue尚品汇商城项目-day04【28.详情页面Detail】
19 1
|
3月前
|
JavaScript 前端开发
Vue学习笔记8:解决Vue学习笔记7中用v-for指令渲染列表遇到两个问题
Vue学习笔记8:解决Vue学习笔记7中用v-for指令渲染列表遇到两个问题
|
3月前
|
JavaScript 前端开发 API
Vue学习笔记7:使用v-for指令渲染列表
Vue学习笔记7:使用v-for指令渲染列表

相关实验场景

更多