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.mzph.cn/news/780523.shtml

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

相关文章

R语言实现——网状 Meta 分析

近来年&#xff0c;网状 Meta 分析相关研究不断涌现&#xff0c;此类研究不但能发表在国内各大核心期刊上&#xff0c;还能在SCI期刊甚至医学4大刊上看到其身影。随手在pubmed上面一搜索&#xff0c;就能得到一万多篇相关文献。俨然成为医学文献研究的“大杀器”&#xff01; P…

AMEYA360代理 | 江苏长晶科技FST2.0高性能 IGBT产品介绍

江苏长晶科技股份有限公司是一家专业从事半导体产品研发、生产和销售的企业。自2019年起&#xff0c;连续4年被中国半导体行业协会评为 “功率器件十强企业”。2021年开始自主研发有着“工业CPU”之称的IGBT&#xff0c;截至2023年Q3在家电/工业/新能源等行业实现8款产品市场应…

刷题DAY37 | LeetCode 738-单调递增的数字 968-监控二叉树

738 单调递增的数字&#xff08;medium&#xff09; 当且仅当每个相邻位数上的数字 x 和 y 满足 x < y 时&#xff0c;我们称这个整数是单调递增的。 给定一个整数 n &#xff0c;返回 小于或等于 n 的最大数字&#xff0c;且数字呈 单调递增 。 思路&#xff1a;将整数转…

Git版本管理使用手册 - 6 - 将本地项目提交到空白仓库

将本地项目提交到空白仓库 1.首先克隆远程空白仓库到本地目录 2.将要提交到master上的项目代码复制到本地仓库目录下。如果项目代码关联SVN要取消SVN关联。可以使用取消SVN关联脚本。 3.编写.ignore文件&#xff0c;该文件可以提交时&#xff0c;忽略指定文件 4.使用idea打开该…

Docker搭建LNMP环境实战(08):安装php-fpm

1、编写php测试文件 在文件夹&#xff1a;/mnt/hgfs/dockers/test_site/www目录下创建文件&#xff1a;test.php&#xff0c;内容为&#xff1a; <?phpecho "hello world!!!!!! From test.php"; ?>2、编写php-fpm部署配置文件 在文件夹&#xff1a;/mnt/h…

【unity】unity安装及路线图

学习路线图 二、有关unity的下载 由于unity公司是在国外&#xff0c;所以.com版&#xff08;https://developer.unity.cn/&#xff09;不一定稳定&#xff0c;学习时推荐从.cn国内版&#xff08;https://developer.unity.cn/&#xff09;前往下载&#xff0c;但是后期仍需回…

鸿蒙ArkTS基础知识-自定义组件生命周期函数onBackPress的调用。

介绍 本课程使用声明式语法和组件化基础知识&#xff0c;搭建一个可刷新的排行榜页面。在排行榜页面中&#xff0c;使用循环渲染控制语法来实现列表数据渲染&#xff0c;使用Builder创建排行列表布局内容&#xff0c;使用装饰器State、Prop、Link来管理组件状态。最后我们点击…

【服务端】node.js详细的配置

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;开发者-曼亿点 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 曼亿点 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a…

【话题】AI大模型学习:理论、技术与应用探索

大家好&#xff0c;我是全栈小5&#xff0c;欢迎阅读小5的系列文章&#xff0c;这是《话题》系列文章 目录 背景1. AI大模型学习的基础理论1.1 机器学习1.2 深度学习 2. AI大模型学习的技术要点2.1 模型结构设计2.2 算法优化2.3 大规模数据处理 3. AI大模型学习的应用场景3.1 自…

使用小皮【phpstudy】运行Vue+MySql项目

现在的情况是我扒到了一个开源的项目&#xff0c;现在想要实现一下前端对应的功能&#xff0c;后端是完备的&#xff0c;但是需要调用数据库将数据跑起来&#xff0c;这里可以使用到MySql数据库&#xff0c;这里我还发现了一个比较好用的软件小皮【phpStudy】 官网 一 安装软件…

什么是缓冲区溢出攻击?

缓冲区是内存存储区域&#xff0c;在数据从一个位置传输到另一个位置时临时保存数据。当数据量超过内存缓冲区的存储容量时&#xff0c;就会发生缓冲区溢出&#xff08;或buffer overrun&#xff09;。结果&#xff0c;试图将数据写入缓冲区的程序会覆盖相邻的内存位置。 例如…

git仓库太大只下载单个文件或文件夹

有没有这样的苦恼&#xff1a;仓库太大&#xff0c;只想下载其中某些文件(夹)&#xff1f; 一招解决&#xff1a;bash down_folder_from_git.sh 运行前&#xff0c;先修改开头三个变量 原理: 稀疏检出 让工作树仅包含自定义的文件 #!/usr/bin/bash addrhttps://github.com/fac…

大唐杯国赛解读及赛前准备分析

从参赛类别的区分到大唐杯名称由原来的“第九届‘大唐杯’全国大学生移动通信5G技术大赛”变更为“第九届‘大唐杯’全国大学生新一代信息通信技术大赛”一系列的变化。 接下来重点讲解本科A组的情况分析: 需要注意的是,和去年的比赛不同,今年并不是两人互相讨论,而是和省…

若依菜单名称过长显示不全怎么办?

菜单名称太长的话超出宽度部分会显示...,我们可以自己调整一下菜单的宽度或者设置一个title,这样鼠标移动上去显示完整的菜单名称。 目录 1、在layout\components\Sidebar\SidebarItem.vue文件设置:title 2、在layout\components\Sidebar\Item.

windows下QT如何集成OpenCV

说明 我在windows下使用QT Creator12创建的CMake项目&#xff0c;需要OpenCV的一些功能。由于安装的时候我选择的QT组件都是MInGW的&#xff0c;所以无法使用VS studio版本的dll库。 为什么vs的版本不能用 我安装QT选择的是MinGW版本&#xff0c;本地编译QT工程只能选择MinG…

XUbuntu22.04之Typora快捷键Ctrl+5不生效问题(二百二十六)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

回溯dfs和分支限界bfs

一&#xff1a;拓扑排序 207. 课程表 这道题说白了就是在有向图中找环 拓扑排序实际上应用的是贪心算法。 贪心算法简而言之&#xff1a;每一步最优&#xff0c;全局就最优。 每一次都从图中删除没有前驱的顶点&#xff0c;这里并不需要真正的删除操作&#xff0c;通过设置入度…

数据可视化Grafana Windows 安装使用教程(中文版)

1.跳转连接 天梦星服务平台 (tmxkj.top)https://tmxkj.top/#/site?url 2.下载应用程序 官网地址&#xff1a;Grafana get started | Cloud, Self-managed, Enterprisehttps://grafana.com/get/ 3.修改配置文件 grafana\conf\defaults 4.启动\bin\目录下serve应用程序 浏…

원클릭으로 주류 전자상거래 플랫폼 상품 상세 데이터 수집 및 접속 시연 예제 (한국어판)

클릭 한 번으로 전자상거래 플랫폼 데이터를 캡처하는 것은 일반적으로 웹 페이지에서 정보를 자동으로 추출 할 수있는 네트워크 파충류 기술과 관련됩니다.그러나 모든 형태의 데이터 수집은 해당 웹 사이트의 사용 약관 및 개인 정보 보호 정책 및 현지 법률 및 규정을 준수…

Facebook轮播广告是什么?投放过程中有哪些需要注意的吗?

轮播广告是Facebook广告形式中的一种&#xff0c;可以把3—5个广告合并到一个可滚动的广告单元中。轮播广告会出现在新鲜事即News Feed中&#xff0c;是独立站卖家常用的一种广告形式 为什么选择轮播广告&#xff1f; 转化率更高&#xff1a;相较于单图广告&#xff0c;轮播广…