赞
踩
“婚礼邀请函”微信小程序由4个页面组成,分别是“邀请函”页面、“照片”页面、“美好时光”页面和“宾客信息”页面。每个页面顶部的导航栏和底部的标签栏是公共部分,在每个页面中都会出现;页面中间的部分是页面内容,每个页面的内容都不同。
“邀请函”页面
“照片”页面
“美好时光”页面
“宾客信息”页面
app.json
中添加tabBar
配置项即可实现标签栏配置。index.wxml
index.json
app.json
images
目录,拷贝项目所需图片htdocs
目录index.js
var express = require('express');//导入Express框架
var app = express();//创建Express框架的实例
app.use(express.static('./htdocs'));//设置静态资源目录
app.listen(8088, res => {//服务器监听8088端口
console.log('服务器启动成功,访问地址:http://localhost:8088/文件名');
});
node index.js
http://localhost:8080/01.mp4
app.json
文件里配置四个页面list
数组里配置标签按钮"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/photo/photo", "iconPath": "images/marry.png", "selectedIconPath": "images/marry.png", "text": "照片" }, { "pagePath": "pages/time/time", "iconPath": "images/video.png", "selectedIconPath": "images/video.png", "text": "美好时光" }, { "pagePath": "pages/guest/guest", "iconPath": "images/guest.png", "selectedIconPath": "images/guest.png", "text": "宾客信息" } ] },
app.wxss
文件里定义公共样式index.wxml
文件里添加图像组件<!--index.wxml--> <image class="bg" src="/images/bg1.jpg"/> <view class="content"> <!-- 顶部图片 <image class="content-gif" src="/images/save_the_date.gif"/> --> <!-- 标题 --> <view class="content-title">邀请函</view> <!-- 合照 --> <view class="content-avatar"> <image src="/images/avatar2.png"/> </view> <!-- 新郎和新娘的姓名 --> <view class="content-info"> <view class="content-name"> <image src="/images/tel.png"/> <view>杨亚东</view> <view>新郎</view> </view> <view class="content-wedding"> <image src="/images/wedding.png"/> </view> <view class="content-name"> <image src="/images/tel.png"/> <view>陈慧敏</view> <view>新娘</view> </view> </view> <!-- 婚礼信息 --> <view class="content-address"> <view>我们诚邀您来参加我们的婚礼</view> <view>时间:2024年1月1日</view> <view>地点:龙马潭区龙涧假日酒店</view> </view> </view>
/* 内容区域的外部容器样式 */
.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; flex-direction: row; 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: 1.5vh; }
photo.wxml
文件里,实现轮播图效果<!--pages/photo/photo.wxml--> <!-- 照片轮播图 --> <swiper indicator-color="white" indicator-active-color="#ff4c91" indicator-dots="true" autoplay="true" interval="3000" duration="1000" vertical="true" circular="true"> <swiper-item> <image src="/images/timeg1.png"/> </swiper-item> <swiper-item> <image src="/images/timeg2.png"/> </swiper-item> <swiper-item> <image src="/images/timeg3.png"/> </swiper-item> <swiper-item> <image src="/images/timeg4.png"/> </swiper-item> </swiper>
photo.wxss
文件里设置“照片”页面的样式/* 设置轮播组件的高度 */
swiper {
height: 100vh;
}
/* 设置轮播图片的尺寸 */
image {
width: 100vw;
height: 100vh;
}
time.wxml
文件里编写“美好时光”页面的结构<!-- 美好时光 - 视频 --> <view class="video"> <view class="video-title">标题:海边随拍</view> <view class="video-time">拍摄日期:2023-08-15</view> <video src="http://localhost:8088/01.mp4" object-fit="fill"/> </view> <view class="video"> <view class="video-title">标题:勿忘初心</view> <view class="video-time">拍摄日期:2023-10-1</view> <video src="http://localhost:8088/02.mp4" object-fit="fill"/> </view> <view class="video"> <view class="video-title">标题:十年之约</view> <view class="video-time">拍摄日期:2023-10-15</view> <video src="http://localhost:8088/03.mp4" object-fit="fill"/> </view>
启动后台的Node服务,才能访问视频资源
查看预览效果
time.wxss
文件里实现“美好时光”页面的样式/* pages/time/time.wxss */ /* 外层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: #eee; } /* 标题区域样式 */ .video-title { font-size: 35rpx; color: #555; } /* 拍摄日期区域样式 */ .video-time { font-size: 26rpx; color: #888; } /* 视频区域样式 */ .video video { width: 100%; margin-top: 20rpx; }
guest.wxml
里添加图像组件,设置背景图片input
组件input
组件<!--pages/guest/guest.wxml--> <image class="bg" src="/images/bg2.jpg"/> <!-- 内容区域 --> <form> <view class="content"> <!-- 姓名 --> <view class="name"> <input name="name" placeholder-class="phcolor" placeholder="请输入您的姓名"/> </view> <!-- 手机号码 --> <view class="telephone"> <input name="telephone" placeholder-class="phcolor" placeholder="请输入您的手机号码"/> </view> <!-- 性别 --> <view class="gender"> <text>请选择您的性别:</text> <radio-group> <radio>男</radio> <radio>女</radio> </radio-group> </view> <!-- 需要的点心 --> <view class="dessert"> <text>请选择您需要的点心:</text> <checkbox-group> <checkbox>蛋糕</checkbox> <checkbox>甜甜圈</checkbox> <checkbox>巧克力</checkbox> </checkbox-group> </view> <!-- 提交按钮 --> <button>提交</button> </view> </form>
guest.wxss
文件里定义.bg
样式在guest.wxss
文件里定义.content
样式类
查看预览效果
在guest.wxss
文件里定义.content .name
样式类
查看预览效果
在guest.wxss
文件里定义.content .telephone
样式类
查看预览效果
guest.wxss
文件里定义.content .gender
样式类guest.wxss
文件里定义.content .dessert
样式类在guest.wxss
文件里定义.content button
样式类
查看预览效果
最终升级版的效果
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。