Vue-day10

网络请求

axios

发送请求的方式

axios({ method:"get"})

axios.get()

axios.post()

二次封装

实例化axios

设置请求拦截器 可以在这里添加请求头参数

设置响应拦截器 可以在这里判断响应错误码

统一管理请求

一个请求封装成一个函数

导出每个函数

状态管理

Vuex是什么?

Vuex是一个专门为Vue.js应用程序开发的状态管理模式+库。它采用集中式存储管路应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。

准备store

下载vuex

npm i vuex

实例化store

export default createStore({ })

应用store

import store from'./store'

app.use(store)

核心概念

state 负责存储数据

getters 定义计算方法(类似组件中的计算属性,每个计算方法必须有返回值)

mutations定义同步方法(可以直接修改state中的数据)

actions定义异步方法(内部可以执行异步代码,但是不能直接修改state中的数据)

modules模块化管理state中的数据

plugins配合其他插件管理state中的数据

核心api

this.$store

每个组件都可以获取$store

this.$store.commit('同步方法名',参数) 调用同步方法,修改store中的数据

this.$store.dispatch('异步方法名',参数) 调用异步方法,执行异步代码

端口

vite.config.js页面

设置代理

  server:{
    proxy:{ //代理
      '/api':{ //以 /api 开头的ajax请求, 自动转发到target所表示的第三方服务器
        target:'http://180.76.99.14',//目标服务器,第三方服务器
        changeOrigin:true,//开启跨域
      }
    }
  }

App.vue页面

导入

// 命名导入,按需导入
import { index_catelist, banner_list, user_login } from './api'
//集体导入到一个对象中
import * as service from './api'

mounted()方法

下查看快捷分类

    service.index_catelist().then((res) => {
      console.log(res.data);
    })

Home.vue页面

导入路由出口

导入二级路由出口

return后

class名字

async mounted(){
//请求数据
var res = await service,banner_list();
//保存
this.swiperlist=res.data.data;
//接收请求返回的结果
}

实现list组件包裹分类列表实现无限加载

导入组件

渲染页面

//发送请求获取下一页数据
//传入数组和上一页数组合并
//加载状态结束
//数据全部加载完成后判断状态

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值