当前位置: 首页 > news >正文

uniapp 微信小程序 自定义日历组件

效果图

功能:可以记录当天是否有某些任务或者某些记录

具体使用:

子组件代码

<template><view class="Accumulate"><view class="bx"><view class="bxx"><view class="plank"></view><view class="calendar"><view class="calendarbx"><view class="calendarview flex jc ac"><u-icon name="arrow-left" color="#232323" size="18" @click="addmonth(1)"></u-icon><view class="title">{{viewday}}</view><u-icon name="arrow-right" color="#232323" size="18" @click="addmonth(2)"></u-icon></view><view class="week flex  ac"><view class="weekli" v-for="(item,index) in week">{{item.title}}</view></view><view class="data"><view class=" flex  ac flexwrap" v-if="show"><view class="datali flex jc ac" v-for="(item,index) in days" :key="item"><!-- 三层判断条件 --><view class="dataliradius flex jc ac flexwrap":class="newday==item&&isnewmonth&&chooseday==item?'dataliradiusc':newday==item&&isnewmonth&&chooseday!=item?'dataliradiuscc':newday!=item&&chooseday==item?'dataliradiusc':''"@click.stop="funchoosedayy(item)">{{item==newday&&isnewmonth?'今':item}}<view class="rounds"><view class="round" v-if="recordlist.includes(item)&&item!=chooseday"></view></view></view></view></view><!-- 以下是为了防止切换闪烁而复制了一份用于展示 --><view class=" flex  ac flexwrap" v-else><view class="datali flex jc ac" v-for="(item,index) in days" :key="item"><!-- 三层判断条件 --><view class="dataliradius flex jc ac flexwrap":class="newday==item&&isnewmonth&&chooseday==item?'dataliradiusc':newday==item&&isnewmonth&&chooseday!=item?'dataliradiuscc':newday!=item&&chooseday==item?'dataliradiusc':''">{{item==newday&&isnewmonth?'今':item}}<view class="rounds" v-if="recordlist.includes(item)&&item!=chooseday"><view class="round"></view></view></view></view></view></view></view></view></view></view></view>
</template><script>export default {data() {return {day: Number(new Date()), //用于记录今天showday: null, //用来存储要加减的日期viewday: null, //页面上展示的日期newday: null, //当天几号isnewmonth: true, //是否是当月chooseday: null, //选中的那一天show: true,week: [{title: '一'},{title: '二'},{title: '三'},{title: '四'},{title: '五'},{title: '六'},{title: '日'}],days: [], //天数数组height: 0};},
props:{recordlist:{default: [], //是否有练习记录,需要每次切换月份的时候查询,那几天有练习记录,下标会记录stype:Array}},onLoad() {},onReady() {let time = this.yearFormat(this.day, 'obj')this.newday = time.day; //当天日期只用初始化一次就不用再初始化了this.showday = time.year + '-' + time.month + '-' + time.day; //用来存储要加减的日期this.viewday = this.yearFormat(this.showday) //页面上展示的日期this.chooseday = time.day;this.addmonth(0) //初始化时间},methods: {//选中日期funchoosedayy(item) {// console.log(item, '选中几号');if (item == '') {return}this.chooseday = item;let dataobj = this.showday.split('-');let month;let year;let day;let sendtime = dataobj[0] + '-' + dataobj[1] + '-' + this.chooseday;this.$emit('sendtime', '选中的时间:' + sendtime);},//加减月份,初始化月份addmonth(type) {this.show = false;setTimeout(() => {this.show = true;}, 100)let newmonth = this.yearFormat(this.day, 'obj')let dataobj = this.showday.split('-');let month;let year;let day;//加if (type == 2) {if (dataobj[1] == 12) {month = 1;year = (dataobj[0] * 1) + 1} else {year = (dataobj[0] * 1);month = (dataobj[1] * 1) + 1}}//减if (type == 1) {if (dataobj[1] == 1) {month = 12;year = (dataobj[0] * 1) - 1} else {year = (dataobj[0] * 1);month = (dataobj[1] * 1) - 1}}//初始化使用if (type == 0) {month = (dataobj[1] * 1);year = (dataobj[0] * 1);}let daynum = this.getDaysInYearMonth(year, month);this.days = daynum; //获取天数let week = this.getDayOfWeek(year, month, 1) //获取每个月1号星期几//0 相当于星期日let addday;if (week == 0) {addday = 6;} else {addday = (week - 1)}for (let i = 0; i < addday; i++) {this.days.unshift('')this.$forceUpdate()}//判断是否是当月,是当月的话,选中当天日期,不是则是当月1号if (newmonth.month == month) {day = dataobj[2];this.chooseday = newmonth.day;this.isnewmonth = true;this.showday = year + '-' + month + '-' + day;this.viewday = year + '年' + month + '月';// console.log(this.showday, '当月');this.$forceUpdate()} else {day = 1;this.chooseday = day;this.isnewmonth = false;this.showday = year + '-' + month + '-' + day;this.viewday = year + '年' + month + '月';this.$forceUpdate()}// console.log(this.days);this.$emit('state_sendtime', '初始化时间:' + this.showday);this.$forceUpdate()},//获取年月yearFormat(num, obj) {//过滤器 用于格式化时间let date = new Date(num); //时间戳为10位需*1000,时间戳为13位的话不需乘1000let year = date.getFullYear();let month = ("0" + (date.getMonth() + 1)).slice(-2);let sdate = ("0" + date.getDate()).slice(-2);let hour = ("0" + date.getHours()).slice(-2);let minute = ("0" + date.getMinutes()).slice(-2);let second = ("0" + date.getSeconds()).slice(-2);let result;if (obj) {// 拼接result = {year: year,month: month,day: sdate}} else {result = year + '年' + month + '月'}// 返回return result;},// 获取该年该月的天数getDaysInYearMonth(year, month) {// 每一次进行更新前,先清空日期数组month = parseInt(month, 10);// javascript中Date()对象的getDate()是获取时间对象对应于一个月中的某一天(1~31),当设置为0的时候,getDate()返回的就是最后一天,刚好对应我们需要的值。var date = new Date(year, month, 0);let arr = [];for (var i = 1; i <= date.getDate(); i++) {arr.push(i)}return arr;},//获取周几// console.log(getDayOfWeek(2023, 10, 5)); // 输出:星期四// 0就是 周日getDayOfWeek(year, month, day) {console.log(year, (month * 1), day);const date = new Date(year + '-' + (month * 1) + '-' + day).getDay(); // 注意月份是从0开始计数const options = {weekday: 'long'};//new Intl.DateTimeFormat('zh-CN', options).format(date)return date;}}}
</script><style lang="less" scoped>.Accumulate {// position: relative;}.back {width: 100%;height: 360rpx;border-radius: 0 0 60rpx 60rpx;background: #3366ff;position: absolute;}.Evaluationlist {margin-top: 30rpx;padding: 0 30rpx;box-sizing: border-box;overflow: scroll;.Evaluationlistli {padding: 30rpx 20rpx;box-sizing: border-box;border-radius: 30rpx;background: #fff;margin-bottom: 30rpx;.left {// display: block;width: 70%;max-height: 100rpx;}.right {padding: 10rpx 30rpx;height: 60rpx;box-sizing: border-box;border-radius: 20rpx;background: #3366ff;color: #fff;}.rightb {padding: 10rpx 30rpx;height: 60rpx;box-sizing: border-box;border-radius: 20rpx;background: #fff;color: #3366ff;border: 1rpx solid #3366ff;}}}.bx {width: 100%;// position: absolute;z-index: 999;.plank {width: 100%;height: 30rpx;}}.viewdata {width: 100%;height: 130rpx;padding: 0 30rpx;box-sizing: border-box;.viewdatali {width: 46%;height: 100%;border-radius: 30rpx;.num {width: 100%;font-size: 38rpx;font-weight: bold;text-align: center;}.title {width: 100%;font-size: 24rpx;margin-top: 5rpx;text-align: center;}}.viewdataliA {background: #f5f5f5;color: skyblue;}.viewdataliB {background: #f5f5f5;color: pink;}}.calendar {width: 100%;// padding: 30rpx 30rpx 0rpx 30rpx;box-sizing: border-box;// border-radius: 30rpx;.calendarbx {width: 100%;padding: 30rpx 30rpx 0rpx 30rpx;box-sizing: border-box;border-radius: 30rpx;background: #fff;.calendarview {background: lightgoldenrodyellow;padding: 10rpx 20rpx;box-sizing: border-box;.title {color: #232323;font-size: 28rpx;margin-left: 100rpx;margin-right: 100rpx;}}.week {font-size: 26rpx;color: #999;margin-top: 30rpx;.weekli {width: 12.2%;height: 30rpx;text-align: center;margin-right: 2.4%;line-height: 30rpx;}.weekli:nth-child(7n+7) {margin-right: 0% !important;}}.data {font-size: 28rpx;color: #999;margin-top: 40rpx;font-weight: bold;min-height: 410rpx;.datali {width: 12.2%;height: 50rpx;// text-align: center;margin-right: 2.4%;margin-bottom: 40rpx;.dataliradius {width: 50rpx;height: 50rpx;border-radius: 999%;background: #fff;line-height: 50rpx;color: #232323 !important;.rounds {width: 100%;height: 10rpx;.round {width: 10rpx;height: 10rpx;border-radius: 999%;background: #3366ff;margin: auto;}}}.dataliradiuscc {color: #3366ff !important;}.dataliradiusc {width: 50rpx;height: 50rpx;border-radius: 999%;background: #3366ff;color: #fff !important;line-height: 50rpx;}}.datali:nth-child(7n+7) {margin-right: 0% !important;}}}}
</style>

父组件

			<customCalendar @sendtime="sendtime" @state_sendtime="state_sendtime" :recordlist="[27, 25, 26, 29, 28]" ></customCalendar>

有需求可以自行修改。

相关文章:

uniapp 微信小程序 自定义日历组件

效果图 功能&#xff1a;可以记录当天是否有某些任务或者某些记录 具体使用&#xff1a; 子组件代码 <template><view class"Accumulate"><view class"bx"><view class"bxx"><view class"plank"><…...

云架构Web端的工业MES系统设计之区分工业过程

云架构Web端的工业MES系统设计之区分工业过程 在当今数字化浪潮席卷全球的背景下,制造业作为国家经济发展的重要支柱产业,正面临着前所未有的机遇与挑战。市场需求的快速变化、客户个性化定制要求的日益提高以及全球竞争的愈发激烈,都促使制造企业必须寻求更加高效、智能的生产…...

Harbor 仓库部署(docker-compose 部署方式)

一、 安装的前提条件 硬件 资源 最低 推荐 cpu2C4C内存4G8G硬盘40G160G 软件 软件 版本 描述 dockerv17.0.6-ce 安装参考官方文档 Install Docker Engine | Docker Documentation docker-composev1.18.0 安装参考官方文档 Overview | Docker Documentation Openssllatest…...

机器学习基础-支持向量机SVM

目录 基本概念和定义 1. 超平面&#xff08;Hyperplane&#xff09; 2. 支持向量&#xff08;Support Vectors&#xff09; 3. 线性可分 4. 边界 SVM算法基本思想和分类 基本思想 间隔最大化 间隔&#xff08;Margin&#xff09; 软边距 SVM 核函数的概念 基本概念…...

卸载wps后word图标没有变成白纸恢复

这几天下载了个wps教育版&#xff0c;后头用完了删了 用习惯的2019图标 给兄弟我干没了&#xff1f;&#xff1f;&#xff1f; 其他老哥说什么卸载关联重新下 &#xff0c;而且还要什么撤销保存原来的备份什么&#xff0c;兄弟也是不得不怂了 后头就发现了这个半宝藏博主&…...

mongodb==安装prisma连接

官网下载mongodb,解压安装 Download MongoDB Community Server | MongoDB 修改bin/mongod.cfg # mongod.conf# for documentation of all options, see: # http://docs.mongodb.org/manual/reference/configuration-options/# Where and how to store data. storage:dbPat…...

python代码实现了一个金融数据处理和分析的功能,主要围绕国债期货及相关指数数据展开

# 忽略某些模块的提示信息 import warnings warnings.filterwarnings("ignore") # 在全局配置中添加RQData账号信息 import rqdatac as rq from typing import List import pandas as pd import numpy as np import re from datetime import datetime, timedelta,tim…...

声音是如何产生的

一、音频概述 RTMP中一般音频采用aac编码&#xff0c;采样率为44100HZ, 每帧1024采样&#xff0c;帧率43&#xff0c;23.2ms一帧 RTC中一般音频采用opus编码&#xff0c;采样率为48000HZ&#xff0c;每帧480采样&#xff0c;帧率100&#xff0c;10ms一帧 通道数&#xff08;c…...

Matlab回归预测大合集(不定期更新)-188

截至2025-1-2更新 1.BP神经网络多元回归预测&#xff08;多输入单输出&#xff09; 2.RBF神经网络多元回归预测&#xff08;多输入单输出&#xff09; 3.RF随机森林多元回归预测&#xff08;多输入单输出&#xff09; 4.CNN卷积神经网络多元回归预测&#xff08;多输入单输…...

CUDA编程【7】 线程束

文章目录 线程束和线程块线程束线程块 线程束的分化问题线程束分化&#xff08;Warp Divergence&#xff09;线程束分化的执行机制如何避免线程束的分化 线程束和线程块 线程束 线程束是SM中基本的执行单元当一个网格被启动&#xff08;即一个核函数被启动&#xff09;&#…...

nodejs:nodejs的技巧有哪些(2)

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境&#xff0c;它允许开发者构建高性能的网络应用。 1. 使用异步编程&#xff0c;利用 async/await 来处理异步操作&#xff0c;使代码更清晰、易读。 const fetchData async () > { const data await getDataFrom…...

构建数字化校园:定义与意义

随着信息技术的快速发展&#xff0c;"数字化校园"这一概念逐渐成为教育领域内热议的话题。数字化校园是指利用先进的信息技术手段&#xff0c;如互联网、大数据、云计算等&#xff0c;对学校的教学、科研、管理和服务等方面进行全面升级和优化的过程。它不仅改变了传…...

LabVIEW语言学习过程是什么?

学习LabVIEW语言的过程可以分为几个阶段&#xff0c;每个阶段的重点内容逐步加深&#xff0c;帮助你从入门到精通。以下是一个简洁的学习过程&#xff1a; ​ 1. 基础入门阶段 理解图形化编程&#xff1a;LabVIEW是一种图形化编程语言&#xff0c;与传统的文本编程语言不同&am…...

阿里云 人工智能与机器学习

阿里云的 人工智能&#xff08;AI&#xff09;与机器学习&#xff08;ML&#xff09; 服务为企业提供了全面的AI解决方案&#xff0c;帮助用户在多个行业实现数据智能化&#xff0c;提升决策效率&#xff0c;推动业务创新。阿里云通过先进的技术和丰富的工具&#xff0c;支持用…...

NUTTX移植到STM32

STM32移植NUTTX 1. Ubuntu下搭建开发环境1.1 先决条件1.2 下载 NuttX1.3 使用Make 进行编译1.4 烧录运行 2.通过NUTTX点亮LED2.1 部署操作系统2.2 修改配置文件2.3 编译运行程序 开发板&#xff1a;DshanMCUF407 官方开发文档&#xff1a;安装 — NuttX latest 文档 参考文档&…...

.NET 9.0 WebApi 发布到 IIS 详细步骤

微软表示&#xff0c;.NET 9 是迄今为止性能最高的 .NET 版本&#xff0c;对运行时、工作负载和语言方面进行了 1,000 多项与性能相关的改进&#xff0c;并采用了更高效的算法来生成更好的代码。 .NET 9 是 .NET 8 的继任者&#xff0c;特别侧重于云原生应用和性能。 作为标准期…...

麒麟 kylin v10 server 升级openssh 9.9p1

准备升级工作 yum install gcc make perl zlib zlib-devel pam pam-devel备份原有的ssh目录&#xff0c;以备后用 cp -r /etc/ssh /etc/ssh.bak cp /etc/pam.d/sshd /etc/pam.d/sshd.before cp /etc/ssh/sshd_config /etc/ssh/sshd_config.before解压源码压缩包 tar -zxf o…...

ollama+FastAPI部署后端大模型调用接口

ollamaFastAPI部署后端大模型调用接口 记录一下开源大模型的后端调用接口过程 一、ollama下载及运行 1. ollama安装 ollama是一个本地部署开源大模型的软件&#xff0c;可以运行llama、gemma、qwen等国内外开源大模型&#xff0c;也可以部署自己训练的大模型 ollama国内地…...

设计模式 行为型 策略模式(Strategy Pattern)与 常见技术框架应用 解析

策略模式&#xff08;Strategy Pattern&#xff09;核心思想是将算法的实现从使用该算法的类中分离出来&#xff0c;作为独立的对象&#xff0c;通过接口来定义算法家族&#xff0c;这样就可以很容易地改变或扩展算法。通过这种方式&#xff0c;可以避免在客户端代码中使用大量…...

2025资源从哪里来!

方案规划告诉你资源最好的答案&#xff1f; 方案一、如果你不知道啥资源可以到这里面找到初步的答案&#xff1f; 哔哩哔哩 (゜-゜)つロ 干杯~-bilibili 在这个网站你可以找到你对应的专业-对应的路线-对应的资源-对应的百度网盘里面全是免费的资源------------------惊喜不&…...

Alist-Sync-Web 网盘自动同步,网盘备份相互备份

Alist-Sync-Web 一个基于 Web 界面的 Alist 存储同步工具&#xff0c;支持多任务管理、定时同步、差异处理等功能。 如果好用&#xff0c;请Star&#xff01;非常感谢&#xff01; GitHub Gitee DockerHub 功能特点 &#x1f4f1; 美观的 Web 管理界面&#x1f504; 支持多任…...

【FlutterDart】 listView.builder例子二(14 /100)

上效果图 上代码&#xff1a; import package:flutter/material.dart;class ListRoles extends StatelessWidget {ListRoles({super.key});final List<String> entries <String>[, -, *, /];final List<int> colorCodes <int>[600, 500, 100, 50];o…...

《shared_ptr源码剖析》

【shared_ptr导读】上一节&#xff0c;我们为大家介绍了unique_ptr的底层原理和实现。相对于unique_ptr&#xff0c;shared_ptr也是被大家广泛使用的智能指针&#xff0c;shared_ptr内部的原理是怎样的&#xff1f;shared_ptr是多线程安全的吗&#xff1f; 本文将以Centos标准库…...

关于markdown实现页面跳转(调查测试:csdn(博客编写效果、发布效果)、typroa中md转pdf的使用情况)

一-方法介绍 [点击跳转到标题0](#1) <a href"#2">正文2</a>### <span id"2">标题0</span>二、跳转测试区 点击跳转到标题0 正文2 三、测试结果 场景MDspan-可标题写博客时候&#xff0c;右侧显示区效果可以发布博客的效果可以…...

入门级容器技术解析:Docker和K8s的区别与关系

目录 &#x1f3af;学习小目标&#xff1a; 关于容器 传统物理机&#x1f5a5;️ 虚拟机&#x1f4bb; 为什么使用容器技术呢&#xff1f;&#x1f914; 容器技术&#x1f943; Docker—容器化平台 K8s(Kubernetes)—容器编排系统​ Docker和K8s有什么关系和区别&#…...

《Rust权威指南》学习笔记(五)

高级特性 1.在Rust中&#xff0c;unsafe是一种允许绕过Rust的安全性保证的机制&#xff0c;用于执行一些Rust默认情况下不允许的操作。unsafe存在的原因是&#xff1a;unsafe 允许执行某些可能被 Rust 的安全性检查阻止的操作&#xff0c;从而可以进行性能优化&#xff0c;如手…...

数据库软考历年上午真题与答案解析(2018-2024)

本题考查计算机总线相关知识。 总线&#xff08;Bus&#xff09;是计算机各种功能部件之间传送信息的公共通信干线&#xff0c;它是由导线组成的传输线束。 根据总线连接设备范围的不同&#xff0c; 分为&#xff1a;1.片内总线&#xff1a;芯片内部的总线&#xff1b; 2.系统…...

HTML5 文件上传(File Upload)详解

HTML5 文件上传&#xff08;File Upload&#xff09;详解 HTML5 提供了强大的文件上传功能&#xff0c;允许用户通过网页选择文件并上传到服务器。以下是关于文件上传控件的详细说明。 1. 基本的文件上传控件 使用 <input> 标签的 type"file" 属性可以创建一…...

构建属于你的七牛云文件上传工具:Qiniu Uploader 详解(从 0 到 1 实现)

GitHub 仓库地址&#xff1a;https://github.com/hahala2333/qiniu-upload &#x1f4da; 简介 在现代 Web 开发中&#xff0c;静态资源的上传和管理是不可避免的需求。为了简化将本地资源上传到七牛云存储的过程&#xff0c;我们构建了 Qiniu Uploader 工具。它具备灵活的配置…...

Spring Boot 项目中集成 Kafka-03

在 Spring Boot 项目中集成 Kafka 有多种方式&#xff0c;适应不同的应用场景和需求。以下将详细介绍几种常用的集成方法&#xff0c;包括&#xff1a; 使用 Spring Kafka (KafkaTemplate 和 KafkaListener)使用 Spring Cloud Stream 与 Kafka Binder使用 Spring for Apache K…...

如何在2025年创建一个网站:使用US Domain Center和WordPress的终极指南

在本指南中&#xff0c;我们将向你展示如何正确地使用US Domain Center和WordPress创建一个网站。无论你是要启动一个个人博客&#xff0c;还是一个在线商店&#xff0c;我们都会提供简单易懂的步骤指导。无需技术技能 — — 只需按照我们的简单步骤操作&#xff0c;你就能在今…...

LLM 训练中存储哪些矩阵:权重矩阵,梯度矩阵,优化器状态

LLM 训练中存储哪些矩阵 目录 LLM 训练中存储哪些矩阵深度学习中梯度和优化器是什么在 LLM 训练中通常会存储以下矩阵: 权重矩阵:这是模型的核心组成部分。例如在基于 Transformer 架构的 LLM 中,每一层的多头注意力机制和前馈神经网络都会有相应的权重矩阵。以 BERT 模型为…...

【JVM】总结篇之对象内存布局 执行引擎

文章目录 对象内存布局对象的实例化对象的内存布局对象的方问定位 执行引擎 对象内存布局 对象的实例化 new对象流程&#xff1f;&#xff08;龙湖地产&#xff09; 对象创建方法&#xff0c;对象的内存分配。&#xff08;360安全&#xff09; 1.判断对象对应的类是否加载、链…...

机器学习之正则化惩罚和K折交叉验证调整逻辑回归模型

机器学习之正则化惩罚和K折交叉验证调整逻辑回归模型 目录 机器学习之正则化惩罚和K折交叉验证调整逻辑回归模型1 过拟合和欠拟合1.1 过拟合1.2 欠拟合 2 正则化惩罚2.1 概念2.2 函数2.3 正则化种类 3 K折交叉验证3.1 概念3.2 图片理解3.3 函数导入3.4 参数理解 4 训练模型K折交…...

【图像处理】OpenCv + Python 实现 Photoshop 中的色彩平衡功能

前言 这是使用 python 和 OpenCv 实现的 Photoshop 中色彩平衡功能的代码&#xff0c;可以设置阴影&#xff0c;高光和中间调的色调参数来调整图片的色彩平衡。 参考文章二也有 python 版本的代码实现&#xff0c;虽然中间调的部分貌似没有实现&#xff0c;但是理论部分讲解还…...

基于vue框架的的校园快递管理系统x0xm0(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。

系统程序文件列表 项目功能&#xff1a;学生,校园跑腿,快递代取,代取进度,评价信息 开题报告内容 基于Vue框架的校园快递管理系统开题报告 一、研究背景与意义 随着电子商务的蓬勃发展&#xff0c;校园快递业务急剧增长&#xff0c;成为校园生活中不可或缺的一部分。然而&a…...

【Vim Masterclass 笔记05】第 4 章:Vim 的帮助系统与同步练习(L14+L15+L16)

文章目录 Section 4&#xff1a;The Vim Help System&#xff08;Vim 帮助系统&#xff09;S04L14 Getting Help1 打开帮助系统2 退出帮助系统3 查看具体命令的帮助文档4 查看帮助文档中的主题5 帮助文档间的上翻、下翻6 关于 linewise7 查看光标所在术语名词的帮助文档8 关于退…...

智能体(Agent)如何具备自我决策能力的机理与实现方法

一、智能体自我决策能力的机理 从人工智能和控制理论的角度看&#xff0c;智能体能够“自我决策”的核心在于其 “感知–认知–行动” 的循环过程&#xff0c;以及在此过程中引入自主学习与自主优化的机制。经过优化与补充&#xff0c;智能体具备自我决策能力的机理可以分解为…...

Redis 数据库源码分析

Redis 数据库源码分析 我们都知道Redis是一个 <key,value> 的键值数据库&#xff0c;其实也就是一个 Map。如果让我来实现这样一个 Map&#xff0c;我肯定是用数组&#xff0c;当一个 key 来的时候&#xff0c;首先进行 hash 运算&#xff0c;接着对数据的 length 取余&…...

vue3 css实现文字输出带光标显示,文字输出完毕,光标消失的效果

Vue实现过程如下&#xff1a; <template><div ><p ref"dom_element" class"typing" :class"{over_fill: record_input_over}"></p></div> </template> <script setup> import {onMounted, ref} from…...

【Leetcode】731. 我的日程安排表 II

文章目录 题目思路代码复杂度分析时间复杂度空间复杂度 结果总结 题目 题目链接&#x1f517; 实现一个程序来存放你的日程安排。如果要添加的时间内不会导致三重预订时&#xff0c;则可以存储这个新的日程安排。 当三个日程安排有一些时间上的交叉时&#xff08;例如三个日程…...

浅谈棋牌游戏开发流程四:核心业务逻辑(二)——房间匹配与对局流程

一、前言&#xff1a;让玩家轻松坐上“牌桌” 在上一篇文章中&#xff0c;我们深入探讨了用户系统与登录流程&#xff0c;了解了如何让“陌生人”转变为游戏中的“正式玩家”。接下来&#xff0c;我们将迈向游戏的核心环节——房间匹配与对局流程。这是玩家实际参与游戏、互动…...

大学生HTML5期末作业 Web前端网页制作 html5+css3+js html+css网页设计 美食 美食模版2个页面

大学生HTML5期末作业 Web前端网页制作 html5css3js htmlcss网页设计 美食 美食模版2个页面 网页作品代码简单&#xff0c;可使用任意HTML辑软件&#xff08;如&#xff1a;Dreamweaver、HBuilder、Vscode 、Sublime 、Webstorm、Text 、Notepad 等任意html编辑软件进行运行及修…...

Java100道面试题

1.JVM内存结构 1. 方法区&#xff08;Method Area&#xff09; 方法区是JVM内存结构的一部分&#xff0c;用于存放类的相关信息&#xff0c;包括&#xff1a; 类的结构&#xff08;字段、方法、常量池等&#xff09;。字段和方法的描述&#xff0c;如名称、类型、访问修饰符…...

MySQL 日志简介

总览 MySQL Server 有以下⼏种⽇志&#xff0c;可以记录服务器正在发⽣的活动。 ⽇志类型⽇志信息 ⼀般查询⽇志 (General query log) 已建⽴的客⼾端连接和从客⼾端接收到的语句 错误⽇志 (Error log) mysqld在启动、运⾏或停⽌时遇到的问题 慢查询⽇志 (Slow query log) 执⾏…...

ubuntu清理磁盘

ubuntu清理磁盘脚本&#xff1a; #&#xff01;/bin/bash#shell脚本用#作注释行,但是第一行的#&#xff01;/bin/bash例外sudo apt-get clean sudo rm -rf /tmp/* sudo rm -rf /var/cache/*cd /var/log/ sudo du -h -d 1 rm -rf ./*cd ~/.cache sudo du -h -d 1 rm -rf ./*apt…...

鸿蒙APP之从开发到发布的一点心得

引言&#xff1a; 做鸿蒙开发大概有1年左右时间了&#xff0c;从最开始的看官方文档、看B站视频&#xff0c;到后来成功发布两款个人APP&#xff08;房贷计算极简版、时简时钟 轻喷&#xff0c;谢谢&#xff09;。简单描述一下里边遇到的坑以及一些经历吧。 学习鸿蒙开发 个…...

C++二十三种设计模式之享元模式

C二十三种设计模式之享元模式 一、组成二、特点三、目的四、缺点五、示例代码 一、组成 抽象享元类&#xff1a;声明操作方法。 具体享元类&#xff1a;使用内部数据和外部数据来实现操作方法。 享元管理者类&#xff1a;创建和管理具体享元对象。 二、特点 1、创建享元对象…...

基于Python的音乐播放器 毕业设计-附源码73733

摘 要 本项目基于Python开发了一款简单而功能强大的音乐播放器。通过该音乐播放器&#xff0c;用户可以轻松管理自己的音乐库&#xff0c;播放喜爱的音乐&#xff0c;并享受音乐带来的愉悦体验。 首先&#xff0c;我们使用Python语言结合相关库开发了这款音乐播放器。利用Tkin…...

基于32单片机的智能语音家居

一、主要功能介绍 以STM32F103C8T6单片机为控制核心&#xff0c;设计一款智能远程家电控制系统&#xff0c;该系统能实现如下功能&#xff1a; 1、可通过语音命令控制照明灯、空调、加热器、窗户及窗帘的开关&#xff1b; 2、可通过手机显示和控制照明灯、空调、窗户及窗帘的开…...