5、axios请求、动画、组件、路由重定向、UI组件

一、axios请求

  • Axios是一个基于Promise的HTTP状态库,封装ajax。ajax包含axios
  • 安装
    • npm install axios
  • 引入
    • import axios form “axios”

1、get请求

<script>
// 1.本页面引入
import axios from "axios";data() {return {imgSrc: "",
//3.接受数组imgList: [],//用数组接受}},// 2.要在创建完成后  请求created() {
// console.dir(axios)//dir  查看结构                      传的参数
axios.get('https://***.com/weChat/applet/course/banner/list?number=3').then(res => {// console.log(res)console.log(res.data.data)//是一个数组this.imgList = res.data.data //数组  传递给data的imgList})}
}
</script>
<template><div><img :src="imgSrc" alt="">imgUrlPc<div v-for="item in imgList" :key="item.id">//显示数组的图片<img :src="item.imgUrlPc" alt=""></div></div>
</template>

2、post请求

axios.post 默认请求头:application/json url 请求参数是 对象

image-20240328113526015

  • 1、在main.js里面引入 axios,挂载到原型上
// 引入axios
import axios from "axios";
Vue.prototype.$axios = axios
Vue.config.productionTip = false
  • 2、在别的页面可以用了
console.log(this.$axios)
  • 3.请求
 // axios.post  默认是application/jsonthis.$axios.post('https://wkt.myhope365.com/weChat/applet/course/list/type', {type: 'free',pageNum: 1,pageSize: 5,}, {headers: {"Content-Type": 'application/x-www-form-urlencoded'}}).then(res => {console.log(res)})

3、axios封装

  • 在 src => api文件夹 => axios.js
  • 每次发送请求时携带一些信息,例如token
  • 对服务器返回的状态码进行处理,例如,状态码500,进行弹框提示“服务器错误”;状态码200,放行,执行下一步操作
  • 把里面的请求头写上
// 对http请求进行封装
import axios from 'axios'// 使用自定义的配置文件发送请求
const instance = axios.create({baseURL: '',timeout: 5000,headers: {//请求头的内容}
});
// 添加请求拦截器
instance.interceptors.request.use(function (config) {// 在发送请求之前做些什么return config;
}, function (error) {// 对请求错误做些什么return Promise.reject(error);
});// 添加响应拦截器
instance.interceptors.response.use(function (response) {instance// 对响应数据做点什么if(response.status === 200){return response.data;}else{console.error("请求错误")console.error(response)}return response;
}, function (error) {// 对响应错误做点什么return Promise.reject(error);
});export default instance

二、动画

  • https://animate.style/
    npm install animate.css --save

  • 在main.js中引入

<!--动画组件 -->
import 'animate.css'
  • v-enter v-enter-to v-enter-active
  • v-leave v-leave-to v-leave-active
//用transition包起来
<transition><div class="box" v-if="flag"></div>
</transition>
<style>
.v-enter{transform: translate(500px);
}
.v-enter-to{transform: translate();
}
.v-enter-active{transition: all 3s;
}
.leave{transform: translate(500px);
}
.v-leave-to{transform: translate();
}
.v-leave-active{transition: all 3s;
}
</style>

三、组件

  • 不用在路由里面配置
<script>
//2、引入组件
import headerCom from "@/components/headerCom.vue";
import swiperCom from "@/components/swiperCom.vue";export default {name: "indexView",//1、添加componentscomponents: {headerCom,swiperCom}
}
</script><template><div><!--3、把组件当做标签名去使用--><swiper-com></swiper-com><!--4、可以起类名--><header-com class= 'swiper'></header-com></div>
</template>

1、 什么是组件

  • 为了拆分Vue实例的代码量的,能够让我们以不同的组件,来划分不同的功能模块,将来我们需要什么样的功能,就可以去调用对应的组件即可。

2、组件化和模块化区别

  • 模块化:从代码功能逻辑的角度划分,方便代码分层开发,保证每个功能模块的职能单一
  • 组件化:从UI组件化,前端的组件开发,方便UI组件的重用

3、为什么组件中的data

  • 数据隔离

4、例子

<script>
import TitleCom from "@/components/titleCom.vue";export default {name: "indexView",//1、在首页中导入components: {TitleCom}
}
</script>
<template><div><!-- 2、在页面中把组件名当成标签使用 --><title-com></title-com></div>
</template>

4、组件动画

//点击按钮动画切换组件<button @click="flag =!flag">flag</button><transitionmode="out-in"name="custom-classes-transition"enter-active-class="animate__animated animate__fadeInUp "leave-active-class="animate__animated animate__zoomOutUp"><swiper-com v-if="flag"></swiper-com><header-com v-else></header-com></transition>

四、路由

路由重定向

  • 在index.js 页面
  {path:'/',redirect:'/filter'},
  • redirect

路由高亮

  • 在 App.vue 页面
    image-20240329194634445

  • 设置路由

  • image-20240329194739715

  • router-link-active

五、UI组件

  • npm i --save ant-design-vue@1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/290812.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pygame用chatgpt绘制3d沿x轴旋转的

import pygame from pygame.locals import * import sys import mathpygame.init()width, height 800, 600 screen pygame.display.set_mode((width, height))vertices [(0, 100, 0), (100, 200, 0), (300, 100, 0)]angle 0 rotation_speed 2 # 可根据需要调整旋转速度 c…

数据结构-树-006

1二叉树 1.1目标二叉树 前序遍历&#xff1a;ABDHIEJCFKG 中序遍历&#xff1a;HDIBEJAFKCG 后序遍历&#xff1a;HIDJEBKFGCA 层序遍历&#xff1a;ABCDEFGHIJK运行结果&#xff1a; 运行结果符合目标二叉树的深度优先&#xff08;前序遍历&#xff0c;中序遍历&#xff0c;…

leetcode216组合总和III

本题思考&#xff1a; 对于输入样例k3,n9 输出里面为什么只有 [[1,2,6],[1,3,5],[2,3,4]]而没有下图所示的重复情况出现呢&#xff1f; 当时代码写错了&#xff0c;思考许久不得解&#xff0c;后面经过仔细对比代码之后发现是我的代码出现了逻辑错误&#xff0c;而正是这一关键…

基于SSM的高校普法系统(有报告)。Javaee项目。ssm项目。

演示视频&#xff1a; 基于SSM的高校普法系统&#xff08;有报告&#xff09;。Javaee项目。ssm项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构&#xff0c;通过Spring Spri…

Python与人工智能:气象领域的数据处理与模型优化

Python是功能强大、免费、开源&#xff0c;实现面向对象的编程语言&#xff0c;在数据处理、科学计算、数学建模、数据挖掘和数据可视化方面具备优异的性能&#xff0c;这些优势使得Python在气象、海洋、地理、气候、水文和生态等地学领域的科研和工程项目中得到广泛应用。可以…

九河云荣获“华为2024·亚太区年度杰出合作伙伴奖”

2024年3月26日~27日&#xff0c;以“加速智能化&#xff0c;一切皆服务”为主题的华为亚太生态伙伴大会在东莞隆重开幕&#xff0c;九河云作为专业的多云管理服务商&#xff0c;凭借多年来在云领域的赋能发展应邀出席并荣获“亚太区年度杰出伙伴奖”&#xff0c;这不仅彰显了九…

关系型数据库mysql(6)备份与恢复

一.数据备份的重要性 &#xff08;1&#xff09;在生产环境中&#xff0c;数据的安全性至关重要 &#xff08;2&#xff09;任何数据的丢失都可能产生严重的后果 &#xff08;3&#xff09;造成数据丢失的原因 程序错误人为操作失误运算错误磁盘故障灾难&#xff08;如火灾…

【HCIP学习】网络类型级数据链路层协议

思维导图在上面哦~ 一、网络类型的分类&#xff08;4种&#xff09; 出现原因&#xff1a;数据链路层使用的协议及规则不同&#xff0c;造成了不同的网络类型 1、多点接入网络&#xff08;MA&#xff09;------一条网段内上出现多个设备 BMA&#xff1a;广播型多点接入&…

第十三届蓝桥杯省赛真题 Java 研究生 组【原卷】

文章目录 发现宝藏【考生须知】试题 A: 排列字母试题 B: 灭鼠先锋试题 C: 质因数个数试题 D: 数位排序试题 E: 蜂巢试题 F : \mathrm{F}: F: 爬树的甲壳虫试题 G: 重新排序试题 H \mathrm{H} H : 技能升级试题 I: 最优清零方案试题 J : \mathrm{J}: J: 推导部分和 发现宝藏 …

ctf.show_web10

本题重点&#xff1a;&#xff08;1&#xff09;php相关函数 &#xff1b;&#xff08;2&#xff09;会灵活运用 group by 和 with rollup&#xff1b; <?php $flag""; function replaceSpecialChar($strParam){ $regex "/(s…

Mybatis-各种查询功能

比较推荐的是用para注解&#xff0c;我们一步一步讲 1. 查询一个实体类对象 若查询出的数据只有一条&#xff0c;可以通过实体类对象接收查询结果 查询一个实体类对象&#xff0c;根据id查询 SelectMapper.java package com.sakurapaid.mybatis3.select.mapper;import com.s…

Redis 特性,为什么要用Redis,Redis到底是多线程还是单线程

一、Redis介绍 Redis&#xff08;Remote Dictionary Server )&#xff0c;即远程字典服务&#xff0c;是一个开源的&#xff0c;使用C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库&#xff0c;并提供多种语言的API。 二、特性(为什么要用Redis&#x…

NFT Insider #125:Astar将与索尼开发的新公链将关注游戏或 NFT 等众多领域

引言&#xff1a;NFT Insider由NFT收藏组织WHALE Members &#xff08;https://twitter.com/WHALEMembers&#xff09;、BeepCrypto &#xff08;https://twitter.com/beep_crypto&#xff09;联合出品&#xff0c;浓缩每周NFT新闻&#xff0c;为大家带来关于NFT最全面、最新鲜…

Python 多线程同步锁实战

大家好&#xff0c;今天我们要聊聊Python中的多线程世界&#xff0c;你知道吗&#xff1f;在并行处理任务时&#xff0c;多线程就像厨房里的大厨们同时烹饪多个菜品&#xff0c;但得保证每道菜都能完美出锅。这就需要我们引入一个神秘的角色——同步锁&#xff08;Lock&#xf…

docker容器内存检测排查

查询容器使用内存 在运维当中&#xff0c;你会发现内存很彪的高&#xff0c;但是如何判断为什么会高&#xff0c;是什么样的程序造成的呢&#xff1f;赶快使用 top&#xff0c;或者 free -h或者 ps -v。是吗&#xff1f;道理是对的。 但是你会发现&#xff0c;全部都是docker…

C语言编译与链接

前言 我们想一个问题&#xff0c;我们写的C语言代码都是文本信息&#xff0c;电脑能直接执行c语言代码吗&#xff1f;肯定不能啊&#xff0c;计算机能执行的是二进制指令&#xff0c;所以将C语言转化为二进制指令需要一段过程&#xff0c;这篇博客讲一下编译与链接&#xff0c;…

OpenHarmony OpenCV应用样例开发

背景 OpenCV 介绍 OpenCV&#xff08;Open Source Computer Vision Library&#xff09;是一个开源的计算机视觉和机器学习软件库。它由一系列的 C 函数和少量 C 类构成&#xff0c;同时提供 Python、Java 和 MATLAB 等语言的接口&#xff0c;实现了图像处理和计算机视觉方面…

内源 npm 无法同步官方 npm 解法

内源的 NPM 通常通过 npm config set registry http://内网 全局配置了内源 NPM&#xff0c;采用 T1 进行官方 NPM 的缓存同步。 但可能会存在没有 sync 机制的场景&#xff0c;当依赖的一个外部包发了新版本是无法立即消费的。 可以采用以下方式修正。 1. scope 限制 regis…

Fastgpt 无法启动或启动后无法正常使用的讨论(启动失败、用户未注册等问题这里)

FastGPT 是一个基于 LLM 大语言模型的知识库问答系统&#xff0c;提供开箱即用的数据处理、模型调用等能力。同时可以通过 Flow 可视化进行工作流编排&#xff0c;从而实现复杂的问答场景&#xff01; FastGPT是非常实用并且相当厉害的个人知识库AI项目&#xff0c;项目是非常…

LeetCode_1.两数之和

一、题目描述 二、方法 1.方法1&#xff08;暴力枚举法&#xff09; 利用两个for循环&#xff0c;对数组进行逐一的遍历&#xff0c;直到找到两个数的和为目标值时返回这两个数的下标。以下为c实现的完整代码。 # include<iostream> using namespace std; #include<…