uniapp——组件多颜色模块展示、气泡框

一、自定义颜色:

样式

在这里插入图片描述

代码

<template><view class="content"><!-- 右上角 --><view class="coverStatus" :class="[itemClass, positionClass,cornerClass,sanJiaoCss,sanJiaoCss2]":style="dynamicStyle">{{title}}</view></view>
</template><script>export default {name: "cardTypeCard",props: {title: {type: String,default: '进行中',},cardType: {type: String,default: 'progress',},position: {type: String,default: 'right', // 默认值为 'right'},cornerStyle: { // 新增的 prop 控制圆角type: String,default: 'rightTop', // 默认右上角元素的圆角},sanJiao: {type: Boolean,default: false, // 默认右上角元素的小三角},sanJiao2: {type: Boolean,default: false, // 默认右上角元素的小三角},width: { // 新增的 prop 控制宽度type: String,default: '48rpx',},height: { // 新增的 prop 控制高度type: String,default: '20rpx',},fontSize: { // 新增的 prop 控制字体大小type: String,default: '14rpx',},},computed: {//定位positionClass() {return this.position === 'left' ? 'leftPosition' : 'rightPosition';},sanJiaoCss() {return this.sanJiao == true ? 'sanJiaoAct' : '';},sanJiaoCss2() {return this.sanJiao2 == true ? 'sanJiaoAct2' : '';},// 圆角样式cornerClass() { // 根据 cornerStyle 返回相应的圆角样式类switch (this.cornerStyle) {case 'rightTop':return 'rightDemo';case 'leftTop':return 'leftDemo';default:return 'allDemo';}},// 背景颜色itemClass() {let className;switch (this.cardType) {case 'progress':className = 'blueBg'break;case 'finish':className = 'greyBg'break;case 'enroll':className = 'pinkBg'break;case 'wait_upload':className = 'pinkBg'break;case 'wait_examine':className = 'greyBg'break;case 'passed':className = 'greyBg'break;case 'fail':className = 'redBg'break;}return className;},// 动态样式对象dynamicStyle() {return {width: this.width,height: this.height,fontSize: this.fontSize,};},},}
</script>
<style lang="scss" scoped>// 卡片颜色.coverStatus {color: #FFFFFF;display: flex;justify-content: center;align-items: center;position: absolute;top: 0;}.sanJiaoAct {}.sanJiaoAct::after {content: '';position: absolute;left: 10rpx;bottom: -8rpx;width: 0;height: 0;border-top: 6rpx solid var(--triangle-color);border-right: 4rpx solid transparent;border-bottom: 4rpx solid transparent;border-left: 4rpx solid transparent;}.sanJiaoAct2 {}.sanJiaoAct2::after {content: '';position: absolute;right: 10rpx;bottom: -8rpx;width: 0;height: 0;border-top: 6rpx solid var(--triangle-color);border-right: 4rpx solid transparent;border-bottom: 4rpx solid transparent;border-left: 4rpx solid transparent;}// 左上角定位.leftPosition {left: 0;}// 右上角定位.rightPosition {right: 0;}// 右上角圆角.rightDemo {border-radius: 0rpx 10rpx 0rpx 10rpx;}// 左上角圆角.leftDemo {// border-radius: 8rpx 0rpx 8rpx 0rpx;border-radius: 15rpx;}// 全部圆角.allDemo {border-radius: 15rpx;}//已报名颜色 、待上传.pinkBg {background: #F364B3;--triangle-color: #F364B3;}//进行中颜色.blueBg {background: #A4CBE8;--triangle-color: #A4CBE8;}//已截止、待审核、已完成颜色.greyBg {background-color: #898989;--triangle-color: #898989;}//已驳回颜色.redBg {background-color: #ff0000;--triangle-color: #ff0000;}
</style>

使用

父页面:

<cardTypeColor :cardType="data.task_status" :title="data.task_status_text" cornerStyle="allDemo" :sanJiao="true">
</cardTypeColor>
import cardTypeColor from '@/components/cardTypeColor/cardTypeColor.vue'

二、使用图片作为背景

样式

在这里插入图片描述在这里插入图片描述

代码

<template><view><view class="content" :class="[positionClass]"><!-- 右上角 --><block v-if="positionClass == 'rightPosition'"><image src="/static/images/index/pinkImg.png" mode="aspectFit" class="signImg"v-if="itemClass == 'pinkBg'"></image><image src="/static/images/index/blueImg.png" mode="aspectFit" class="signImg"v-if="itemClass == 'blueBg'"></image><image src="/static/images/index/greyImg.png" mode="aspectFit" class="signImg"v-if="itemClass == 'greyBg'"></image></block><!-- 左上角 --><block v-if="positionClass == 'leftPosition'"><image src="/static/images/index/pinkImg2.png" mode="aspectFit" class="signImg"v-if="itemClass == 'pinkBg'"></image><image src="/static/images/index/blueImg2.png" mode="aspectFit" class="signImg"v-if="itemClass == 'blueBg'"></image><image src="/static/images/index/greyImg2.png" mode="aspectFit" class="signImg"v-if="itemClass == 'greyBg'"></image></block><view class="coverStatus">{{title}}</view></view></view>
</template><script>export default {name: "cardTypeCard",props: {title: {type: String,default: '进行中',},cardType: {type: String,default: 'progress',},position: {type: String,default: 'right', // 默认值为 'right'},},computed: {//定位positionClass() {return this.position === 'left' ? 'leftPosition' : 'rightPosition';},// 背景颜色itemClass() {let className;switch (this.cardType) {case 'progress':className = 'blueBg'break;case 'finish':className = 'greyBg'break;case 'enroll':className = 'pinkBg'break;case 'wait_upload':className = 'pinkBg'break;case 'wait_examine':className = 'greyBg'break;case 'passed':className = 'greyBg'break;case 'fail':className = 'redBg'break;}return className;},},}
</script>
<style lang="scss" scoped>.content {position: absolute;top: 0;width: 50rpx;height: 32rpx;.signImg {position: absolute;left: 0;top: 0;width: 100%;height: 100%;}.coverStatus {position: absolute;left: 1rpx;top: 2rpx;z-index: 4;width: 100%;height: 100%;color: #FFFFFF;}}// 左上角定位.leftPosition {left: 0;}// 右上角定位.rightPosition {right: 0;}
</style>

使用

父页面:

<cardTypeColor :cardType="data.task_status" :title="data.task_status_text" position="left">
</cardTypeColor>
import cardTypeColor from '@/components/cardTypeColor/cardTypeColor.vue'

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

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

相关文章

python getsize如何使用

第一步&#xff0c;点击键盘 winr&#xff0c;打开运行窗口&#xff1b;在窗口中输入“cmd"&#xff0c;点击确定&#xff0c;打开windows命令行窗口。 第二步&#xff0c;在windows命令行窗口中&#xff0c;输入“python”&#xff0c;进入python交互窗口。 第三步&#…

笔记 | 嵌入式系统概论

1 嵌入式系统简介 1.1 嵌入式系统的定义 根据美国电气与电子工程师学会&#xff08;IEEE&#xff1a;Institute of Electrical and Electronics Engineers )的定义&#xff0c;嵌入式系统是用于控制、监视或辅助操作机器和设备的装置(原文: devices used to control, monitor…

WiFi、Ethenet、4G优先级切换

1、多网卡情况下如何调整优先级方案 按照目前公司前辈给出的方案&#xff0c;调整优先级的手段有两种&#xff1a; <1>.删除默认路由--route del 的方法 <2>.ifmetric源码提供的修改路由表的mteric的值来设置路由的优先级&#xff0c;metric越小优先级越高。 应…

ANSYS Help 的使用

ANSYS 帮助文档是相当实用且重要的第一手资料&#xff0c;90% 以上的纯操作问题都可以在帮助文档找到相关的解释。 点击开始菜单的 ANSYS Help即可打开帮助文档 帮助文档有两种打开方式&#xff1a; 基于帮助文档的安装包安装于本地后&#xff0c;可直接启动帮助程序没有安装…

Spring-IOC之组件扫描

版本 Spring Framework 6.0.9​ 1. 前言 通过自动扫描&#xff0c;Spring 会自动从扫描指定的包及其子包下的所有类&#xff0c;并根据类上的特定注解将该类装配到容器中&#xff0c;而无需在 XML 配置文件或 Java 配置类中逐一声明每一个 Bean。 支持的注解 Spring 支持一系…

书生·浦语大模型实战营之Llama 3 高效部署实践(LMDeploy 版)

书生浦语大模型实战营之Llama 3 高效部署实践&#xff08;LMDeploy 版&#xff09; 环境&#xff0c;模型准备LMDeploy chatTurmind和Transformer的速度对比LMDeploy模型量化(lite)LMDeploy服务(serve) 环境&#xff0c;模型准备 InternStudio 可以直接使用 studio-conda -t …

机器学习运用-民宿价格

项目简介 随着旅游业的蓬勃发展&#xff0c;民宿市场迎来了前所未有的增长机遇。正好最近在参加拓尔思数据挖掘公益实习活动&#xff0c;我的项目将应用机器学习技术开发一个价格预测模型。可以达到更好地理解和预测民宿价格的目的&#xff0c;该模型综合考虑了从容纳人数、便…

【Python】Python函数的黑魔法:递归,嵌套函数与装饰器

欢迎来到CILMY23的博客 本篇主题为&#xff1a; Python函数的黑魔法&#xff1a;递归&#xff0c;嵌套函数与装饰器 个人主页&#xff1a;CILMY23-CSDN博客 系列专栏&#xff1a;Python | C | C语言 | 数据结构与算法 感谢观看&#xff0c;支持的可以给个一键三连&#xff…

基于51单片机的矩阵按键扫描的proteus仿真

文章目录 一、按键按键按键消抖 二、独立按键仿真图仿真程序 三、矩阵按键仿真图仿真程序 四、总结 一、按键 按键 按键通常指的是电子设备上的一种输入装置&#xff0c;用于在按下时发送信号&#xff0c;以便设备执行相应的操作。按键可以分为独立按键和矩阵按键两种类型。 …

TRIZ理论下攀爬机器人的创新设计与研究

随着科技的飞速发展&#xff0c;机器人技术已广泛应用于各个领域。特别是在复杂环境下的作业&#xff0c;如灾难救援、太空探测等&#xff0c;对机器人的移动能力和适应性提出了更高要求。在这样的背景下&#xff0c;基于TRIZ理论的攀爬机器人设计与研究应运而生&#xff0c;它…

简单的图像处理算法

本笔记参考crazy_Bingo 基础&#xff1a; 图像处理都是用卷积矩阵对图像卷积计算&#xff0c;如3X3 的矩阵对640 X 480分辨率的图像卷积&#xff0c;最终会得到638 X 478 的图像。卷积过程是这样的&#xff1a; 一、中值滤波 &#xff1a; 找出矩阵中的最中间值作为像素点 中…

Flink的安装、项目创建、任务打包和部署完整实现,任务实现使用JAVA语言

Flink资源下载地址 Flink安装包下载地址 一、本地模式安装Flink 1、在Linux服务上&#xff0c;创建flink文件夹 mkdir flink 2、上传文件并解压 tar -zxvf flink-1.14.6-bin-scala_2.11.tgz 解压完成后&#xff0c;如图&#xff1a; 3、启动Flink 进入到解压目录下&#x…

YOLOv9训练损失、精度、mAP绘图功能 | 支持多结果对比,多结果绘在一个图片(消融实验、科研必备)

一、本文介绍 本文给大家带来的是YOLOv9系列的绘图功能&#xff0c;我将向大家介绍YOLO系列的绘图功能。我们在进行实验时&#xff0c;经常需要比较多个结果&#xff0c;针对这一问题&#xff0c;我写了点代码来解决这个问题&#xff0c;它可以根据训练结果绘制损失(loss)和mA…

Java的八大基本数据类型和 println 的介绍

前言 如果你有C语言的基础&#xff0c;这部分内容就会很简单&#xff0c;但是会有所不同~~ 这是我将要提到的八大基本数据类型&#xff1a; 注意&#xff0c;Java的数据类型是有符号的&#xff01;&#xff01;&#xff01;和C语言不同&#xff0c;Java不存在无符号的数据。 整…

Day:动态规划 LeedCode 123.买卖股票的最佳时机III 188.买卖股票的最佳时机IV

123. 买卖股票的最佳时机 III 给定一个数组&#xff0c;它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 注意&#xff1a;你不能同时参与多笔交易&#xff08;你必须在再次购买前出售掉之前的股票&a…

安全开发实战(2)---域名反查IP

目录 安全开发专栏 前言 域名与ip的关系 域名反查ip的作用 1.2.1 One 1.2.2 Two 1.2.3 批量监测 ​总结 安全开发专栏 安全开发实战http://t.csdnimg.cn/25N7H 这步是比较关键的一步,一般进行cdn监测后,获取到真实ip地址后,或是域名时,然后进行域名反查IP地址,进行进…

基于Springboot的职称评审管理系统

基于SpringbootVue的职称评审管理系统的设计与实现 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringbootMybatis工具&#xff1a;IDEA、Maven、Navicat 系统展示 用户登录 首页 评审条件 论坛信息 系统公告 后台登录页面 用户管理 评审员管理 省份…

再谈C语言——理解指针(四)

assert断⾔ assert.h 头⽂件定义了宏 assert() &#xff0c;⽤于在运⾏时确保程序符合指定条件&#xff0c;如果不符合&#xff0c;就报错终⽌运⾏。这个宏常常被称为“断⾔”。 assert(p ! NULL); 上⾯代码在程序运⾏到这⼀⾏语句时&#xff0c;验证变量 p 是否等于 NULL 。…

​LeetCode解法汇总2385. 感染二叉树需要的总时间

目录链接&#xff1a; 力扣编程题-解法汇总_分享记录-CSDN博客 GitHub同步刷题项目&#xff1a; https://github.com/September26/java-algorithms 原题链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 描述&#xff1a; 给你一棵二叉树的根节点 root &#xff0…

创建型设计模式

七大原则 1. 开闭原则&#xff08;Open-Closed Principle, OCP&#xff09; 详解&#xff1a;软件实体&#xff08;类、模块、函数等&#xff09;应该易于扩展&#xff0c;但是不易于修改。换句话说&#xff0c;当软件需求变化时&#xff0c;应该通过添加新代码来实现变化&am…