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

微信小程序页面制作——婚礼邀请函(含代码)

在这里插入图片描述

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。
🍎个人主页:Java Fans的博客
🍊个人信条:不迁怒,不贰过。小知识,大智慧。
💞当前专栏:微信小程序开发实战
✨特色专栏:国学周更-心性养成之路
🥭本文内容:微信小程序页面制作——婚礼邀请函(含代码)

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。

在这里插入图片描述

文章目录

    • 一、案例分析
    • 二、知识储备
      • 1. 导航栏配置
      • 2. 标签栏配置
      • 3. vw、vh单位
      • 4. video组件
      • 5. 表单组件
    • 三、案例实现
      • 1. 准备工作
      • 2. 项目初始化
      • 3. 实现“邀请函”页面的结构
      • 4. 实现“邀请函”页面的样式
      • 5. 实现“照片”页面的结构
      • 6. 实现“照片”页面的样式
      • 7. 实现“美好时光”页面的结构
      • 8. 实现“美好时光”页面的样式
      • 9. 实现“宾客信息”页面的结构
      • 10. 实现“宾客信息”页面的样式
    • 资源下载

一、案例分析

  “婚礼邀请函”微信小程序由4个页面组成,分别是“邀请函”页面、“照片”页面、“美好时光”页面和“宾客信息”页面。

在这里插入图片描述

  每个页面顶部的导航栏和底部的标签栏是公共部分,在每个页面中都会出现;页面中间的部分是页面内容,每个页面的内容都不同。

“邀请函”页面各部分位置说明:

  “邀请函”页面用于展示顶部图片、标题、合照、新郎和新娘的姓名,以及婚礼信息。

在这里插入图片描述

“照片”页面各部分位置说明:

  “照片”页面用于展示新郎和新娘的婚纱照,该页面采用纵向轮播的方式进行展示。每一张轮播的图片都占满整个页面的图片区域,纵向滑动屏幕可以实现图片的纵向切换,并且右侧会显示指示点。在用户无操作时,图片会自动无缝轮播。

在这里插入图片描述

“美好时光”页面各部分位置说明:

  “美好时光”页面用于展示一对新人拍摄的一些视频,该页面显示了一个视频列表,列表中的每一项都包含标题、拍摄日期和视频。视频可以显示出进度条、视频时长,并支持全屏显示。

在这里插入图片描述

“宾客信息”页面各部分位置说明:

  “宾客信息”页面提供了一个表单,用于填写宾客的信息,包括姓名、手机号、性别和需要的点心。

在这里插入图片描述

二、知识储备

1. 导航栏配置

  在微信小程序中,有时为了页面美观,需要更改导航栏的样式。此时可以通过页面配置文件或全局配置文件对导航栏的样式进行配置。

  导航栏的相关配置项如下表:

在这里插入图片描述

  在页面配置文件中对导航栏进行配置:以pages/index/index.json页面配置文件为例,通过navigationBarTitleText配置项设置导航栏标题为“微信小程序”。

{"navigationBarTitleText": "微信小程序"
}

  在全局配置文件中对导航栏进行配置:在全局配置文件app.json中,通过window配置项可以对全局默认窗口进行配置,配置后会对所有页面都会生效,且优先级低于页面级配置。例如,将导航栏的相关配置项写在app.json文件的window配置项中作为全局配置使用。

"navigationBarTitleText":  "微信小程序"

  默认导航栏标题文字与修改后的导航栏标题文字的对比如下图:

在这里插入图片描述

2. 标签栏配置

  通过标签栏可以很方便地在多个页面之间进行切换。在微信小程序的全局配置文件app.json中添加tabBar配置项即可实现标签栏配置。

  tabBar配置项的属性如下表:

在这里插入图片描述

  标签栏数量

  注意:微信小程序中的标签栏分为顶部标签栏和底部标签栏,标签数量一般在2~5个之间。

  演示tabBar配置项的属性使用

"tabBar": {"color": "#ccc","selectedColor": "#ff4c91","borderStyle": "black","backgroundColor": "#fff","list": []
},

  list数组中的每个元素都是一个代表标签按钮的对象,通过配置该对象的属性可以对标签栏中的每个标签按钮进行配置。list数组中最少需要配置2个标签按钮,最多只能配置5个标签按钮。

  标签按钮的相关属性如下表:

在这里插入图片描述

"list": [{"pagePath": "pages/index/index","iconPath": "images/home.png","selectedIconPath": "images/home-active.png","text": "首页"
}, {"pagePath": "pages/list/list","iconPath": "images/contact.png","selectedIconPath": "images/contact-active.png","text": "联系我们"
}]

  需要注意的是,pages/index/index和pages/list/list这两个页面都必须在pages数组中配置并提前创建好对应的文件。

  标签栏的效果如下图:

在这里插入图片描述

3. vw、vh单位

  在使用CSS编写移动端的页面样式时,由于不同手机的屏幕宽高不同,屏幕适配会比较麻烦。针对这类型问题,通过视口单位可以有效解决。

  视口表示可视区域的大小,视口单位主要包括vw(Viewport Width)和vh(Viewport Height),在CSS中很常用。

  在微信小程序中也可以使用vw和vh单位。使用视口单位时,系统会将视口的宽度和高度分为100份,1vw占用视口宽度的百分之一,1vh占用视口高度的百分之一。vw、vh是相对长度单位,永远以视口作为参考。例如,屏幕宽度为375px,那么1vw = 375px / 100 = 3.75px。

4. video组件

  微信小程序提供了video组件用来播放视频,video组件的默认宽度为300px,高度为225px,可通过WXSS代码设置宽高。

  video组件的常用属性如下表:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
  演示将视频在页面上循环播放

  video组件的src属性用于设置要播放视频的资源地址

<video src="http://localhost:3000/01.mp4" loop="true"></video>

  video组件的loop属性的属性值设置为true,表示循环播放视频

5. 表单组件

  微信小程序中的表单组件与HTML中的表单类似。微信小程序在HTML基础上做了封装,并且增加了一些组件。表单组件通常用于用户信息的填写,以便于把用户填写的信息提交给服务器。

  常用的表单组件如下表:

在这里插入图片描述

  • form组件

  form组件表示表单容器,没有任何样式,需要配合其他表单组件一起使用,用于提交用户输入的信息和选择的选项。

  form组件内部可以包含若干个供用户输入或选择的表单组件,允许提交的表单组件为switch、input、 checkbox、slider、radio和picker组件。表单中携带数据的组件(如输入框)必须带有name属性值,否则无法识别提交的内容。

  form组件的常用属性如下表:

在这里插入图片描述

  • button组件

  button组件表示按钮,功能比HTML中的button按钮丰富。

  button组件的常用属性如下表:

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

  演示button组件的使用

  利用button组件的type属性改变按钮的样式,type属性的可选值有3个,分别是primary(绿色)、default(白色)、warn(红色)。

<button>普通按钮</button>
<button type="primary">主色调按钮</button>
<button type="warn">警告按钮</button>

  3种按钮如下图:

在这里插入图片描述
  第1个为普通按钮的样式类型,
  第2个为主色调按钮的样式类型,
  第3个为警告按钮样式类型。

  • input组件

  input组件与HTML中的标签作用类似,都用于接收用户的输入。在微信小程序中,input组件增加了很多属性,使input组件使用起来更加简单、方便。

  input组件的常用属性如下表:

在这里插入图片描述
在这里插入图片描述
  input组件的type属性的可选值如下表:

在这里插入图片描述

  演示input组件的使用

  设置type属性值为text,表示在微信客户端中运行的微信小程序出现文本输入键盘

<input type="text "/>
<input type="number" />

  设置type属性值为number,表示在微信客户端中运行的微信小程序出现数字输入键盘

在这里插入图片描述

  • checkbox和checkbox-group组件

  checkbox组件表示多选项目,在进行多项选择时会用到。checkbox组件一般与checkbox-group组件搭配使用,checkbox-group组件表示多项选择器,内部由多个checkbox组件组成。建议将不同组的checkbox组件嵌套在不同的checkbox-group组件中,从而方便管理和区分。

  checkbox组件的常用属性如下表:

在这里插入图片描述

  演示checkbox和checkbox-group组件的使用

<checkbox-group><checkbox>蛋糕</checkbox><checkbox>甜甜圈</checkbox><checkbox>巧克力</checkbox>
</checkbox-group>

在这里插入图片描述

  • radio和radio-group组件

  radio组件为单选项目,是表单中常用的组件,用于在从多个选项中选出一个,选项之间是互斥关系。radio组件一般与radio-group组件搭配使用,radio-group组件表示单项选择器,内部由多个radio组件组成。建议将不同组的radio组件分别嵌套在不同的radio-group组件中,从而方便管理和区分。

  radio组件的常用属性如下表:

在这里插入图片描述

  • 演示radio和radio-group组件的使用

  通过radio和radio-group组件实现性别的单项选择。

<radio-group><radio></radio><radio></radio>
</radio-group>

在这里插入图片描述

三、案例实现

1. 准备工作

  • 创建项目:在微信开发者工具中创建一个新的微信小程序项目,项目名称为“婚礼邀请函”,模板选择“不使用模板”。

  • 创建页面:在app.json中配置4个页面,分别是pages/index/index、pages/guest/guest、pages/video/video和pages/picture/picture。

  • 复制素材:复制images文件夹到本项目中。

  • 目录结构:

在这里插入图片描述

  • 安装Node.js
  • 启动服务器

2. 项目初始化

项目初始化主要包含以下3个方面。

在这里插入图片描述
标签栏配置的实现步骤

在app.json文件中添加tabBar配置项完成标签栏的配置,具体步骤如下:
1、编写标签栏样式的相关配置;
2、在list数组中完成对标签按钮的配置,为每个标签按钮配置页面路径、未选中时的图标路径、选中时的图标路径,以及按钮文字。

各个导航栏标题的配置

为“邀请函”页面、“照片”页面、“美好时光”页面和“宾客信息”页面设置导航栏标题,分别设置为“邀请函”“照片”“美好时光”和“宾客信息”。在每一个页面打开的过程中,导航栏的标题也会随之变化。

全局样式文件中导航栏样式的配置

在app.json文件中编写导航栏样式的配置。

{"pages": ["pages/index/index","pages/guest/guest","pages/video/video","pages/picture/picture"],"window": {"backgroundTextStyle": "light","navigationBarBackgroundColor": "#ff4c91","navigationBarTextStyle": "white"},  "tabBar": {"color": "#ccc","selectedColor": "#ff4c91","borderStyle": "white","backgroundColor": "#fff","list": [{"pagePath": "pages/index/index","iconPath": "images/invite.png","selectedIconPath": "images/invite.png","text": "邀请函"}, {"pagePath": "pages/picture/picture","iconPath": "images/marry.png","selectedIconPath": "images/marry.png","text": "照片"}, {"pagePath": "pages/video/video","iconPath": "images/video.png","selectedIconPath": "images/video.png","text": "美好时光"}, {"pagePath": "pages/guest/guest","iconPath": "images/guest.png","selectedIconPath": "images/guest.png","text": "宾客信息"}]},"style": "v2","sitemapLocation": "sitemap.json"
}

公共样式的编写

在app.wxss文件中定义公共样式。

/**app.wxss**/
/* 定义公共样式 */
page {display: flex;flex-direction: column;justify-content: space-between;box-sizing: border-box;
}

3. 实现“邀请函”页面的结构

实现步骤:

  • 实现“邀请函”页面的背景图片;
  • 编写内容区域的整体结构;
  • 编写新郎和新娘的姓名区域的结构;
  • 编写婚礼信息区域的结构。
<!--index.wxml-->
<!-- “邀请函”页面的背景图片 -->
<image class="bg" src="/images/bg_1.png"></image>
<!-- 内容区域的整体结构 -->
<view class="content"><!-- 顶部图片 --><image class="content-gif" src="/images/save_the_date.gif"></image><!-- 标题 --><view class="content-title">邀请函</view><!-- 合照 --><view class="content-avatar"><image src="/images/avatar.png"></image></view><!-- 新郎和新娘的名字 --><view class="content-info"><view class="content-name"><image src="/images/tel.png"></image><view>王辉辉</view><view>新郎</view></view><view class="content-wedding"><image src="/images/wedding.png"></image></view><view class="content-name"><image src="/images/tel.png"></image><view>张琳琳</view><view>新娘</view></view></view><!-- 婚礼信息 --><view class="content-address"><view>我们诚邀您来参加我们的婚礼</view><view>时间:2022128</view><view>地点:北京市海淀区XX路XX酒店</view></view>
</view>

4. 实现“邀请函”页面的样式

实现步骤:

  • 编写背景图片的样式;
  • 编写内容区域中外层容器的样式;
  • 编写顶部图片区域的样式;
  • 编写标题区域的样式;
  • 编写合照区域的样式;
  • 编写新郎和新娘的姓名区域的样式;
  • 编写新郎和新娘姓名区域中姓名的样式;
  • 编写新郎和新娘姓名区域中电话图片的样式;
  • 编写新郎和新娘姓名区域中“喜”字图片的样式;
  • 编写婚礼信息区域的样式。
/**index.wxss**/
/* 背景图片的样式 */
.bg {width: 100vw;height: 100vh;
}
/* 内容区域外层容器的样式 */
.content {width: 100vw;height: 100vh;position: fixed;display: flex;flex-direction: column;align-items: center;
}
/* 顶部图片区域的样式 */
.content-gif {width: 19vh;height: 18.6vh;margin-bottom: 1.5vh;
}
/* 标题区域的样式 */
.content-title {font-size: 5vh;color: #ff4c91;text-align: center;margin-bottom: 2.5vh;
}
/* 头像区域的样式 */
.content-avatar image {width: 24vh;height: 24vh;border: 3px solid #ff4c91;border-radius: 50%;
}
/* 新郎和新娘的名字区域的样式 */
.content-info {width: 45vw;text-align: center;margin-top: 4vh;display: flex;align-items: center;
}
/* 新郎和新娘的名字区域中姓名区域的样式 */
.content-name {color: #ff4c91;font-size: 2.7vh;line-height: 4.5vh;font-weight: bold;position: relative;
}
/* 姓名区域中电话图片的样式 */
.content-name > image {width: 2.6vh;height: 2.6vh;border: 1px solid #ff4c91;border-radius: 50%;position: absolute;top: -1vh;right: -3.6vh;
}
/* 新郎新娘名字区域中“喜”字图片的样式 */
.content-wedding {flex: 1;
}
.content-wedding > image {width: 5.5vh;height: 5.5vh;margin-left: 20rpx;
}
/* 婚礼信息区域的样式 */
.content-address {margin-top: 5vh;color: #ec5f89;font-size: 2.5vh;font-weight: bold;text-align: center;line-height: 4.5vh;
}
.content-address view:first-child {font-size: 3vh;padding-bottom: 2vh;
}

5. 实现“照片”页面的结构

该页面采用纵向轮播的方式展示图片,并且在用户无操作时,可以实现自动无缝衔接滑动。

<!--pages/picture/picture.wxml-->
<swiper indicator-color="white" indicator-active-color="#ff4c91" indicator-dots autoplay interval="3500" duration="1000" vertical circular><swiper-item><image src="/images/timg1.jpg"></image></swiper-item><swiper-item><image src="/images/timg2.jpg"></image></swiper-item><swiper-item><image src="/images/timg3.jpg"></image></swiper-item><swiper-item><image src="/images/timg4.jpg"></image></swiper-item>
</swiper>

6. 实现“照片”页面的样式

在pages/picture/picture.wxss文件中编写“照片”页面样式,使页面更加美观。

/* pages/picture/picture.wxss */
swiper {height: 100vh;
}
image {width: 100vw;height: 100vh;
}

7. 实现“美好时光”页面的结构

在pages/video/video.wxml文件中编写“美好时光”页面的结构。

<!--pages/video/video.wxml-->
<view class="video"><view class="video-title">标题:海边随拍</view><view class="video-time">拍摄日期:00:15:00</view><video src="http://localhost:3000/01.mp4" objectFit="fill"></video>
</view>
<view class="video"><view class="video-title">标题:勿忘初心</view><view class="video-time">拍摄日期:00:15:00</view><video src="http://localhost:3000/02.mp4" objectFit="fill"></video>
</view>
<view class="video"><view class="video-title">标题:十年之约</view><view class="video-time">拍摄日期:00:15:00</view><video src="http://localhost:3000/03.mp4" objectFit="fill"></video>
</view>

8. 实现“美好时光”页面的样式

实现步骤:

  • 编写“美好时光”页面中的3个外层view组件的样式;
  • 编写标题和拍摄日期区域的样式;
  • 编写视频区域的样式。
/* pages/video/video.wxss */
/* “美好时光”页面中的3个外层view组件的样式 */
.video {box-shadow: 0 8rpx 17rpx 0 rgba(7, 17, 27, 0.1);margin: 10rpx 25rpx;margin-bottom: 30rpx;padding: 20rpx;border-radius: 10rpx;background: #fff;
}
/* 标题和拍摄日期区域的样式 */
.video-title {font-size: 35rpx;color: #333;
}
.video-time {font-size: 26rpx;color: #979797;
}
/* 视频区域的样式 */
.video video {width: 100%;margin-top: 20rpx;
}

9. 实现“宾客信息”页面的结构

实现步骤:

  • 实现“宾客信息”页面的背景图片;
  • 编写内容区域的整体页面结构;
  • 编写姓名区域的结构;
  • 编写手机号码区域的结构;
  • 编写性别区域的结构;
  • 编写需要的点心区域的结构。
<!--pages/guest/guest.wxml-->
<!-- 页面的背景图片 -->
<image class="bg" src="/images/bj_2.png"></image>
<form><view class="content"><!-- 姓名 --><view class="input"><input name="name" placeholder-class="phcolor" placeholder="输入您的姓名" /></view><!-- 手机号码 --><view class="input"><input name="phone" placeholder-class="phcolor" placeholder="输入您的手机号码" /></view><!-- 性别 --><view class="radio"><text>请选择您的性别:</text><radio-group><radio></radio><radio></radio></radio-group></view><!-- 需要的点心 --><view class="check"><text>请选择您需要的点心:</text><checkbox-group><checkbox>蛋糕</checkbox><checkbox>甜甜圈</checkbox><checkbox>巧克力</checkbox></checkbox-group></view><button>提交</button></view>
</form>

10. 实现“宾客信息”页面的样式

实现步骤:

  • 编写背景图片的样式;
  • 编写内容区域中外层容器的样式;
  • 编写姓名和手机号码区域的样式;
  • 编写性别区域的样式;
  • 编写需要的点心区域的样式;
  • 编写“提交” 按钮的样式。
/* pages/guest/guest.wxss */
/* 背景图片的样式 */
.bg {width: 100vw;height: 100vh;
}
/* 内容区域外层容器的样式 */
.content {width: 80vw;position: fixed;left: 10vw;bottom: 8vh;
}
/* 编写输入框的样式 */
.content .input {font-size: large;border: 1rpx solid #ff4c91;border-radius: 10rpx;padding: 1.5vh 40rpx;margin-bottom: 1.5vh;color: #ff4c91;
}
/* 手机号码区域的样式 */
.content .radio {font-size: large;margin-bottom: 1.5vh;color: #ff4c91;display: flex;
}
/* 需要的点心区域的样式 */
.content .check {font-size: large;margin-bottom: 1.5vh;color: #ff4c91;
}
.check checkbox-group {margin-top: 1.5vh;color: #ff4c91;
}
.check checkbox-group checkbox {margin-left: 20rpx;
}
.check checkbox-group checkbox:nth-child(1) {margin-left: 0;
}
/* 提交按钮的样式 */
.content button {font-size: large;background: #ff4c91;color: #fff;
}
.content .phcolor {color: #ff4c91;
}

资源下载

案例下载链接:婚礼邀请函


  码文不易,本篇文章就介绍到这里,如果想要学习更多Java系列知识点击关注博主,博主带你零基础学习Java知识。与此同时,对于日常生活有困扰的朋友,欢迎阅读我的第四栏目:《国学周更—心性养成之路》,学习技术的同时,我们也注重了心性的养成。

在这里插入图片描述

相关文章:

微信小程序页面制作——婚礼邀请函(含代码)

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…...

django中间件,中间件给下面传值

1、新建middleware.py文件 # myapp/middleware.py import time from django.http import HttpRequest import json from django.http import JsonResponse import urllib.parse class RequestTimeMiddleware:def __init__(self, get_response):self.get_response get_respons…...

调用DeepSeek官方的API接口

效果 前端样式体验链接&#xff1a;https://livequeen.top/deepseekshow 准备工作 1、注册deepseek官网账号 地址&#xff1a;DeepSeek 点击进入右上角【API开放平台】&#xff0c;并进行账号注册。 2、注册完成后&#xff0c;依次点击【API keys】-【生成API key】&#x…...

C++--iomanip库

目录 1. 设置字段宽度&#xff1a;std::setw() 2. 设置浮点数精度&#xff1a;std::setprecision() 3. 设置填充字符&#xff1a;std::setfill() 4. 控制对齐方式&#xff1a;std::left 和 std::right&#xff0c;std::internal 5. 控制进制输出&#xff1a;std::hex、std…...

程序诗篇里的灵动笔触:指针绘就数据的梦幻蓝图<8>

大家好啊&#xff0c;我是小象٩(๑ω๑)۶ 我的博客&#xff1a;Xiao Xiangζั͡ޓއއ 很高兴见到大家&#xff0c;希望能够和大家一起交流学习&#xff0c;共同进步。 今天我们复习前面学习的指针知识 目录 关于指针数组和数组指针的区别指针数组&#xff08;Array of Poi…...

redo和binlog区别

事务是数据库区别于文件系统的最重要功能&#xff0c;数据库事务支持ACID四个特性&#xff0c;其中I&#xff1a;隔离性是通过锁的方式实现的&#xff0c;剩下的A&#xff1a;原子性 C&#xff1a;一致性 D&#xff1a;持久性是通过redo日志、undo日志、binlog日志来实现的。 我…...

2.11学习记录

web——CTFHub XSS学习 学习资料&#xff1a;xss&#xff08;跨站攻击&#xff09; 原理 1.黑客发送带有xss恶意脚本的链接给用户 2.用户点击了恶意链接&#xff0c;访问了目标服务器&#xff08;正常的服务器&#xff09; 3.目标服务器&#xff08;正常的服务器&#xff09…...

Packer 手动修复安装腾讯云插件

文章目录 Packer [腾讯云插件文档](https://developer.hashicorp.com/packer/integrations/hashicorp/tencentcloud) 提供的版本&#xff1a;v1.2.0&#xff0c;目前 Packer 构建镜像时&#xff0c;不支持现有2种[硬盘类型](https://www.tencentcloud.com/zh/document/product/…...

【探索未来科技】2025年国际学术会议前瞻

【探索未来科技】2025年国际学术会议前瞻 【探索未来科技】2025年国际学术会议前瞻 文章目录 【探索未来科技】2025年国际学术会议前瞻前言1. 第四届电子信息工程、大数据与计算机技术国际学术会议&#xff08; EIBDCT 2025&#xff09;代码示例&#xff1a;机器学习中的线性回…...

【Elasticsearch】Bucket Count K-S Test 聚合

Bucket Count K-S Test是 Elasticsearch 中的一种兄弟管道聚合&#xff08;sibling pipeline aggregation&#xff09;&#xff0c;用于执行双样本柯尔莫哥洛夫-斯米尔诺夫检验&#xff08;Kolmogorov-Smirnov Test&#xff0c;简称 K-S 检验&#xff09;。这种聚合主要用于比较…...

LINUX——基础指令

引言 Linux 操作系统以其强大的命令行工具著称&#xff0c;掌握基础指令是高效使用 Linux 的必备技能。无论是文件管理、文本处理还是系统监控&#xff0c;命令行都能以极简的操作完成复杂任务。本文系统梳理 Linux 最核心的 30 基础指令&#xff0c;配合实际场景案例和进阶技…...

Expo运行模拟器失败错误解决(xcrun simctl )

根据你的描述&#xff0c;问题主要涉及两个方面&#xff1a;xcrun simctl 错误和 Expo 依赖版本不兼容。以下是针对这两个问题的解决方案&#xff1a; 解决 xcrun simctl 错误 错误代码 72 通常表明 simctl 工具未正确配置或路径未正确设置。以下是解决步骤&#xff1a; 确保 …...

Spring中常见的设计模式

Spring框架是一个庞大的生态系统&#xff0c;设计模式的应用广泛分布在其各个模块中。以下是针对你提到的设计模式&#xff0c;在Spring源码中的具体应用位置&#xff1a; 单例模式&#xff08;Singleton Pattern&#xff09;&#xff1a; 在org.springframework.beans.factory…...

502 Bad Gateway 错误详解:从表现推测原因,逐步排查直至解决

502 Bad Gateway 错误通常意味着服务器之间的通信失败&#xff0c;但导致的具体原因往往因场景而异。 场景一&#xff1a;高峰期频繁出现 502 错误 1.1 现象 在流量高峰期间&#xff08;如促销活动、直播发布等&#xff09;&#xff0c;页面访问变慢甚至出现 502 错误&#…...

【DeepSeek】deepseek可视化部署

目录 1 -> 前文 2 -> 部署可视化界面 1 -> 前文 【DeepSeek】DeepSeek概述 | 本地部署deepseek 通过前文可以将deepseek部署到本地使用&#xff0c;可是每次都需要winR输入cmd调出命令行进入到命令模式&#xff0c;输入命令ollama run deepseek-r1:latest。体验很…...

基于STM32的ADS1230驱动例程

自己在练手项目中用到了ADS1230&#xff0c;根据芯片手册自写的驱动代码&#xff0c;已测可用&#xff0c;希望对将要用到ADS1230芯片的人有所帮助。 芯片&#xff1a;STM32系列任意芯片、ADS1230 环境&#xff1a;使用STM32CubeMX配置引脚、KEIL 部分电路&#xff1a; 代码…...

计算机毕业设计springboot+vue.js就业数据采集分析平台 mybatis-plus(LW文档+PPT+讲解+代码安装)

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…...

关于“#pragma arm section zidata = “mgr_buffer_section“的解析

#pragma arm section zidata “mgr_buffer_section” 是 ARM 编译器特有的指令&#xff0c;用于控制变量在内存中的分配位置。其作用如下&#xff1a; 核心解析 #pragma arm section 这是 ARM 编译器支持的编译指示&#xff08;pragma&#xff09;&#xff0c;用于指定代码或…...

【MySQL】InnoDB存储页的独立表空间

目录 1、背景2、独立表空间【1】表空间大小【2】区【3】组【4】段【5】区的类型【6】XDES Entry区结构【7】XDES Entry链表【8】XDES Entry链表基节点【9】INODE Entry段结构【10】FIL_PAGE_TYPE_FSP_HDR页类型【11】FIL_PAGE_IBUF_BITMAP页类型【12】FIL_PAGE_INODE页类型【13…...

RabbitMQ的死信队列的产生与处理

死信队列&#xff08;Dead Letter Queue, DLQ&#xff09; 1. 死信&#xff08;Dead Letter&#xff09;是怎么产生的&#xff1f; 在 RabbitMQ 中&#xff0c;消息会变成 死信&#xff08;Dead Letter&#xff09;的常见情况有以下几种&#xff1a; 消息被拒绝&#xff08;R…...

二分算法篇:二分答案法的巧妙应用

二分算法篇&#xff1a;二分答案法的巧妙应用 那么看到二分这两个字想必我们一定非常熟悉&#xff0c;那么在大学期间的c语言的教学中会专门讲解二分查找&#xff0c;那么我们来简单回顾一下二分查找算法&#xff0c;我们知道二分查找是在一个有序的序列中寻找一个数在这个序列…...

实现:多活的基础中间件

APIRouter &#xff1a; 路由分发服务 API Router 是一个 HTTP 反向代理和负载均衡器&#xff0c;部署在公有云中作为 HTTP API 流量的入口&#xff0c;它能识别 出流量的归属 shard &#xff0c;并根据 shard 将流量转发到对应的 ezone 。 API Router 支持多种路由键&am…...

【分布式理论9】分布式协同:分布式系统进程互斥与互斥算法

文章目录 一、互斥问题及分布式系统的特性二、分布式互斥算法1. 集中互斥算法调用流程优缺点 2. 基于许可的互斥算法&#xff08;Lamport 算法&#xff09;调用流程优缺点 3. 令牌环互斥算法调用流程优缺点 三、三种算法对比 在分布式系统中&#xff0c;多个应用服务可能会同时…...

百问网imx6ullpro调试记录(linux+qt)

调试记录 文章目录 调试记录进展1.开发板相关1.1百问网乌班图密码 1.2 换设备开发环境搭建串口调试网络互通nfs文件系统挂载 1.3网络问题1.4系统启动1.5进程操作 2.QT2.1tslib1.获取源码2.安装依赖文件3.编译 2.2qt移植1.获取qt源码2.配置编译器3.编译 2.3拷贝到开发板1.拷贝2.…...

微信小程序如何使用decimal计算金额

第三方库地址&#xff1a;GitHub - MikeMcl/decimal.js: An arbitrary-precision Decimal type for JavaScript 之前都是api接口走后端计算&#xff0c;偶尔发现这个库也不错&#xff0c;计算简单&#xff0c;目前发现比较准确 上代码 导入js import Decimal from ../../uti…...

win32汇编环境,对线程的创建与操作示例二

;运行效果 ;win32汇编环境,对线程的创建与操作示例二 ;本文主要是实现用CreateThread创建线程时,如何把参数传入进去 ;以下举3个例子说明,如何把数值、字符串和自定义结构传入线程之中 ;下面为asm文件 ;>>>>>>>>>>>>>>>>>…...

React(三)

动态控制显示和css import { useState } from "react"; import "./index.css"; const list [{ id: 1, username: "aaName", content: "一条评论", ctime: "10-18 08:15" },{ id: 2, username: "bbName", conten…...

GitHub Pages + Jekyll 博客搭建指南(静态网站搭建)

目录 &#x1f680; 静态网站及其生成工具指南&#x1f30d; 什么是静态网站&#xff1f;&#x1f4cc; 静态网站的优势⚖️ 静态网站 VS 动态网站 &#x1f680; 常见的静态网站生成器对比&#x1f6e0;️ 使用 GitHub Pages Jekyll 搭建个人博客&#x1f4cc; 1. 创建 GitHu…...

用Go实现 SSE 实时推送消息(消息通知)——思悟项目技术4

目录 简介 工作原理 例子 使用场景 简介 SSE&#xff08;Server - Sent Events&#xff09;是一种允许服务器向客户端实时推送更新的 Web 技术。是一种基于 HTTP 协议的单向通信机制&#xff0c;服务器可以在客户端建立连接后&#xff0c;持续不断地向客户端发送事件流。客…...

通过客户端Chatbox或OpenwebUI访问识别不到本地ollama中的模型等问题的解决

Chatbox和Open WebUI 等无法获取到 Ollama里的模型&#xff0c;主要是由以下原因导致&#xff1a; Ollama 服务未正确暴露给 Docker 容器或客户端模型未正确下载或名称不匹配网络配置或权限问题 排查以上问题的思路首先排查ollama服务是否启动&#xff0c;然后再看端口号 使…...

TfidfVectorizer

TF-IDF / Term Frequency - Inverse Document Frequency 作用&#xff1a;是自然语言处理NLP中常用的文本特征提取工具&#xff0c;用于将文本数据转换为数据向量。 核心思想&#xff1a;是通过统计词频和逆文档频率来量化词语在文本中的重要性。 T F − I D F ( t , d ) T F…...

如何评估云原生GenAI应用开发中的安全风险(下)

以上就是如何评估云原生GenAI应用开发中的安全风险系列中的上篇内容&#xff0c;在本篇中我们介绍了在云原生AI应用开发中不同层级的风险&#xff0c;并了解了如何定义AI系统的风险。在本系列下篇中我们会继续探索我们为我们的云原生AI应用评估风险的背景和意义&#xff0c;并且…...

Flink-序列化

一、概述 几乎每个Flink作业都必须在其运算符之间交换数据&#xff0c;由于这些记录不仅可以发送到同一JVM中的另一个实例&#xff0c;还可以发送到单独的进程&#xff0c;因此需要先将记录序列化为字节。类似地&#xff0c;Flink的堆外状态后端基于本地嵌入式RocksDB实例&…...

1064 - You have an error in your SQL syntax;

在创建数据库表建立外键是遇到了如下报错 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near position(position_id) ) at line 8 数据库表sql如下&#xff1a; --职位表 CR…...

团结引擎 Shader Graph:解锁图形创作新高度

Shader Graph 始终致力于为开发者提供直观且高效的着色器构建工具&#xff0c;持续推动图形渲染创作的创新与便捷。在团结引擎1.4.0中&#xff0c;Shader Graph 迎来了重大更新&#xff0c;新增多项强大功能并优化操作体验&#xff0c;助力开发者更轻松地实现高质量的渲染效果与…...

Spring Boot 配置 Mybatis 读写分离

JPA 的读写分离配置不能应用在 Mybatis 上, 所以 Mybatis 要单独处理 为了不影响原有代码, 使用了增加拦截器的方式, 在拦截器里根据 SQL 的 CRUD 来路由到不同的数据源 需要单独增加Mybatis的配置 Configuration public class MyBatisConfig {Beanpublic SqlSessionFactory…...

Redis 数据类型 List 列表

列表类型是⽤来存储多个有序的字符串&#xff0c;如下图所⽰&#xff0c;a、b、c、d、e 五个元素从左到右组成了⼀个有序的列表&#xff0c;列表中的每个字符串称为元素&#xff08;element&#xff09;&#xff0c;⼀个列表最多可以存储 2^32 - 1个元素。在 Redis 中&#xff…...

Hello Robot 推出Stretch 3移动操作机器人,赋能研究与商业应用

Hello Robot公司近日发布了其新一代开源移动操作机器人Stretch 3&#xff0c;这是一款高度灵活的机器人平台&#xff0c;专为机器人研究、教育实验和商业自动化设计。Stretch 3 结合了先进的移动机器人技术、灵巧操作能力和开源软件生态系统&#xff0c;为用户提供了一个功能强…...

有滚动条的时候,设置盒子的位置

<div class"AIBox mt-24" id"AIBox"><div v-for"(v, i) in AIs" :key"i" :class"v.role assistant ? mb-24 : "><div :class"v.role user ? fc-ac42f3 fw-600 font-16 : ">{{ v.content }}…...

律所录音证据归集工具:基于PyQt6与多线程的自动化音频管理解决方案

在律所日常工作中&#xff0c;音频证据的整理与归集是一个高频且复杂的任务。面对大量的案件录音文件&#xff0c;如何实现快速且准确的分类与存档&#xff0c;成为了律所提高效率、降低出错率的关键。本文将通过技术角度解析一款名为律所录音证据归集工具的项目&#xff0c;详…...

LogicFlow自定义节点:矩形、HTML(vue3)

效果&#xff1a; LogicFlow 内部是基于MVVM模式进行开发的&#xff0c;分别使用preact和mobx来处理 view 和 model&#xff0c;所以当我们自定义节点的时候&#xff0c;需要为这个节点定义view和model。 参考官方文档&#xff1a;节点 | LogicFlow 1、自定义矩形节点 custo…...

软件工程教育的革命:AI辅助学习与实践

软件工程教育正面临着巨大的挑战。传统的教学模式往往以理论讲解为主&#xff0c;实践机会不足&#xff0c;导致学生难以将理论知识转化为实际技能。此外&#xff0c;繁琐的代码编写和项目搭建过程也常常耗费学生大量时间和精力&#xff0c;影响学习效率。为了解决这些问题&…...

Office hour 1

涉及Python环境配置、深度学习框架安装、常用数据处理和分析库、以及Python IDE的选择等内容。 1. Anaconda 安装与配置 • Anaconda Individual Edition&#xff1a;Anaconda 是一个开源平台&#xff0c;旨在简化数据科学的工作流程&#xff0c;提供了 Python 和超过 150 个科…...

【魔法阵——广义Dijkstra,DP】

题目 代码 #include <bits/stdc.h> using namespace std; const int N 1010; const int inf 0x3f3f3f3f; int g[N][N], d[N][N]; bool st[N][N]; int n, k, m; struct Node {int v, c, i;bool operator < (const Node &y) const{return v > y.v;} }; priori…...

使用epoll与sqlite3进行注册登录

将 epoll 服务器 客户端拿来用 客户端&#xff1a;写一个界面&#xff0c;里面有注册登录 服务器&#xff1a;处理注册和登录逻辑&#xff0c;注册的话将注册的账号密码写入数据库&#xff0c;登录的话查询数据库中是否存在账号&#xff0c;并验证密码是否正确 额外功能&…...

vue3-01-初识vue3相对于vue2的提升与比较,使用vue-cli创建项目,使用vite构建工具创建项目

1.相对于vue2的提升 2.创建vue3项目-使用vue-cli创建 2.1 cmd查看版本号 vue-V 2.2进入创建项目 切换D盘 D: 指定自定义创建的项目 cd 文件名 创建项目 vue create 项目名称 成功创建项目 运行项目 3.使用vite(构建工具)创建前端项目 3.1创建项目 3.1.1 npm init vite-ap…...

持久性HTTPVS.非持久性HTTP

1. HTTP协议基础 HTTP&#xff08;HyperText Transfer Protocol&#xff09;是Web通信的核心协议&#xff0c;定义了客户端&#xff08;浏览器&#xff09;与服务器之间传输数据的规则。 在HTTP/1.0及之前的版本中&#xff0c;默认使用非持久性连接&#xff0c;而HTTP/1.1及更…...

Node.js怎么调用到打包的python文件呢

在 Node.js 中调用打包后的 Python 可执行文件&#xff08;如 PyInstaller 生成的 .exe 或二进制文件&#xff09;&#xff0c;可以通过以下步骤实现&#xff1a; 一、Python 打包准备 假设已有打包好的 Python 文件 your_script.exe&#xff08;以 Windows 为例&#xff09;&…...

C++,STL容器,map/multimap:映射/多重映射深入解析

文章目录 一、容器概览核心特性对比二、底层实现原理三、核心操作详解1. 容器初始化2. 元素插入操作3. 元素访问与查找4. 元素删除操作四、实战应用场景1. 高频数据统计2. 事件调度系统五、性能优化策略1. 键类型选择2. 内存管理优化六、注意事项与陷阱1. 迭代器失效问题2. 自定…...

【IDEA】2017版本的使用

目录 一、常识 二、安装 1. 下载IDEA2017.exe 2. 安装教程 三、基本配置 1. 自动更新关掉 2. 整合JDK环境 3. 隐藏.idea文件夹和.iml等文件 四、创建Java工程 1. 新建项目 2. 创建包结构&#xff0c;创建类&#xff0c;编写main主函数&#xff0c;在控制台输出内容。…...