【微信小程序从入门到精通(项目实战)】——微电影小程序

在这里插入图片描述


👨‍💻个人主页:@开发者-曼亿点

👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!

👨‍💻 本文由 曼亿点 原创

👨‍💻 收录于专栏:微信小程序开发

🅰

请添加图片描述


文章目录

    • 🅰
    • 前言
    • 🎶==一、==创建页面
    • 🎶==二、== 页面配置与布局
    • 🎶==三、== wx:key的使用
    • 🎶==四、==添加页面视图
        • 结束语🥇


前言

本项目是一个微电影的介绍页面,首页是”电影周周看“,在底部导航栏用于切换跳转。如图所示:每一周推荐页是关于电影的详细资料,采用轮播图效果实现。


🎶一、创建页面


(1)建立项目
在微信小程序开发者工具中新建一个空的项目,创建后,新建app.js文件,文件內容为空即可:
新建app.json文件,编写代码即可:

{"pages": ["pages/about/about","pages/weekly/weekly"]}

保存上述代码后,开发者工具后自动创建about页(首页)、weekly页(推荐页)相关文件。
(2)页面组件
本项目所需要的素材包括图片、图标等文件统一放在项目根目录下的/images目录中。
about页的本项目的首页,是运行时打开的第一个界面,界面需简洁美观所以本案例文本和文件的组件,则在/pages/about/about.wxml的文件中编写如下代码:

<image src="/pages/about/OIP-B.jpg" class="about-banner"></image><text style="font-weight: bold; font-size: 60rpx;">电影周周看</text>
<text>我每张推荐一部好电影</text>
<text>我的微博:weibo.com/simbasong</text>
</view>
<view>
<text>我</text><navigator style="display: inline;" url="/pages/weekly/weekly" hover-class="nav-hover" class="nav-defalut">每周推荐</navigator><text>一部好片</text>

weekly页是显示每周电影的详情,本案例只放电影图片,电影名称,电影点评,是否强烈推荐文本组件则在/pages/weekly/weekly.wxml的文件中编写如下代码:

<image src="/pages/weekly/xhr.jpeg"></image>
<text>电影周周看</text>
<text>第一周:小黄人</text>
<text>点评:它是一个非常好看的电影</text>

当然若要浏览weekly页的内容,这时需要在app.json文件把weekly页放在首位才行。


🎶二、 页面配置与布局


(1)顶部导航栏配置
小程序导航栏,一般在app.json种全局设置,这样每个页面的顶部导航栏都一样(除非在页面中重新设置)。在本案例中我们不需要一样的导航栏,所以我们单独在页面中设置。
①about页的设置,在/pages/about/about.json的文件中编码如下代码:

{"usingComponents": {},"navigationBarTitleText": "关于","navigationBarTextStyle": "black","navigationBarBackgroundColor": "#fff"
}

②weekly页面的设置,在/pages/weekly/weekly.json的文件中编写的代码:

{"usingComponents": {},"navigationBarTitleText": "每日推荐"
}

(2)about页面布局
单独为 组件设置样式,具体代码如下:

<text style="font-weight: bold; font-size: 60rpx;">电影周周看</text>
<text>我每张推荐一部好电影</text>
<text>我的微博:weibo.com/simbasong</text>

在上述代码中文本”电影周周看“单独用style="font-weight: bold; font-size: 60rpx;"表示字体加粗,大小为60px。

用弹性盒子flex属性重新编写/pages/about/about.wxss文件中的代码,具体如下:

.container{background-color: #eee;height: 100vh;display: flex;flex-direction: column;justify-content: space-around;}

这种布局可以统一属性,布局灵活。、
接下来我们对图片进行设置,我们不需要图片的完整的显示,只需要显示图片的宽高为屏幕的一半。我们先在/pages/about/about.wxml文件中的< image >添加样式规则:class=“about-banner”,然后再/pages/about/about.wxss文件中的增加样式设置,具体的代码如下:

.about-banner{
width: 375rpx;
height: 375rpx;
border-radius: 50%;
}

(3)weekly页布局
我们要求weekly页也要采用about页样式规则,则在/pages/weekly/weekly.wxss的文件中添加about页面一样的样式规则,具体代码如下:

<image src="/pages/weekly/xhr.jpeg"></image>
<text>电影周周看</text>
<text>第一周:小黄人</text>
<text>点评:它是一个非常好看的电影</text>

接下来about.wxss的样式定义:.container的代码移到app.wxss文件中来定义,实现了weekly页面的样式规则与about页统一定义,具体代码如下:

.container{background-color: #eee;height: 100vh;display: flex;flex-direction: column;justify-content: space-around;}

🎶三、 wx:key的使用


为了实现从about页面跳转到weekly页的页面之间的链接的点击效果,我们用最简单的方法:用navigator组件实现文本之间的页面跳转。假设我们点击的文本”每周推荐“跳转到weekly,则在about.wxml文件中添加如下代码:

<text>我</text><navigator style="display: inline;" url="/pages/weekly/weekly" hover->每周推荐</navigator><text>一部好片</text>
</view>

接下来我们实现链接文本定义颜色,则上面的代码添加点击颜色和默认颜色,具体的代码如下

<view>
<text>我</text><navigator style="display: inline;" url="/pages/weekly/weekly" hover-class="nav-hover" class="nav-defalut">每周推荐</navigator><text>一部好片</text>
</view>

接下来about.wxss文件中给点击颜色为红色默认颜色为蓝色的样式定义,具体的代码如下:

.nav-hover{
color: blue;
}
.nav-defalut
{
color:red;
}

很多时候,对于about页、weekly页一样的一级页面,我们希望他们能够任意的进行切换,我们可以通过在顶部或底部添加标签栏tabBar来实现。本案例采用的是底部标签tabBar来实现。
假如配置icon图已经添加在/images/icon目录中,全局配置app.json文件中添加标签栏tabBar的实现代码具体如下:

"tabBar": {"list": [{"text": "每日推荐","pagePath": "pages/about/about","iconPath": "/pages/images/home-icon-svg-4.png","selectedIconPath": "/pages/images/home-icon-svg-4.png"},{"pagePath": "pages/weekly/weekly","text": "关于","iconPath": "/pages/images/OIP1-C.jpg","selectedIconPath": "/pages/images/OIP1-C.jpg"}],"color": "#000","selectedColor": "#00f"},

🎶四、添加页面视图


在/pages/weekly/weekly.js页面添加如下代码:

data: {
weekMovieList:[{name:"小黄人",comment:"最精彩的电影",imagePath:"/pages/weekly/xhr.jpeg",isHighlyRecommended:false},{name:"泰坦尼克号",comment:"失去的才是永恒的",imagePath:"/pages/weekly/xhr.jpeg",isHighlyRecommended:false},{name:"这个杀手不太冷静",comment:"小萝莉与怪蜀的爱情故事",imagePath:"/pages/weekly/xhr.jpeg",isHighlyRecommended:false}
]},

把原来的/pages/weekly/weekly.wxml页面代码修改如下:

<view class="">
<swiper class="movie-swiper" indicator-dots="{{true}}">
<swiper-item class="movie" wx:for="{{weekMovieList}}" wx:key="{{item}}">
<view class="container movie-card">
<image class="movie-image" src="{{item.imagePath}}"></image>
<text>第{{index+1}}周:{{item.name}}</text>
<text>点评:{{item.comment}}</text>
<text wx:if="{{item.isHighlyRecommended}}" style="font-size: 40rpx;color: red;">强烈推荐</text>
</view>
</swiper-item>
</swiper>
</view>

上述采用条件渲染wx:if和列表渲染:wx:for来实现页面组件的定义。还采用了< swriper>组件来实现幻灯片轮播效果,每个电影都有一张幻灯片< swriper-item>。
在/pages/weekly/weely.wxss样式页面中添加各个组件样式规则,去实现代码如下:

.movie-swiper
{
height: 90vh;
}
.movie-card
{
height: 100%;
width: 100%;
}

保存代码后,运行程序,页面效果就会展示以下的效果:
在这里插入图片描述

结束语🥇

以上就是微信小程序之列表渲染
持续更新微信小程序教程,欢迎大家订阅系列专栏🔥微信小程序
你们的支持就是曼亿点创作的动力💖💖💖
请添加图片描述

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

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

相关文章

2024华中杯C题完整解题思路及代码

C 题 基于光纤传感器的平面曲线重建算法建模 光纤传感技术是伴随着光纤及光通信技术发展起来的一种新型传感器技 术。它是以光波为传感信号、光纤为传输载体来感知外界环境中的信号&#xff0c;其 基本原理是当外界环境参数发生变化时&#xff0c;会引起光纤传感器中光波参量&…

Vue前端框架如何调用天聚数行API?

Vue是一个业内优秀的前端解决方案&#xff0c;采用了最新流行的MVVM框架模式&#xff0c;深受web前端开发者的喜爱&#xff0c;在相关开发者社区也一直都是热门交流话题。那么&#xff0c;如何通过Vue调用天行数据的API接口呢&#xff0c;下面就具体给大家示例。 vue采用的是数…

数字零售力航母-看微软如何重塑媒体

数字零售力航母-看微软如何重塑媒体 - 从2024全美广播协会展会看微软如何整合营销媒体AI技术和AI平台公司 2024年&#xff0c;微软公司联合英伟达总司&#xff0c;赞助全美广播协会展会。本次展会微软通过搭建一个由全面的合作伙伴生态系统支持的可信和安全的平台&#xff0c;…

TCP和UDP协议的区别

1、定义 TCP协议的全称是Transmission Control Protocol&#xff08;传输控制协议&#xff09;&#xff0c;是一种面向连接的点对点的传输层协议。 UDP协议的全称是User Datagram Protocal&#xff08;用户数据报协议&#xff09;&#xff0c;为应用程序提供一种无需建立连接…

手机从0基础到精通拍摄,拍摄手法0基础教学,快速入门

课程下载&#xff1a;https://download.csdn.net/download/m0_66047725/89064797 更多资源下载&#xff1a;关注我。 课程内容&#xff1a; 1 为什么学拍摄剪辑.mp4 2 如何选择手机.mp4 3 补光灯的作用.mp4 !三角支架的作用.mp4 5 麦克风的作用.mp4 6 帧率清晰度参数.m…

Hive进阶

目录 一、MapReduce的计算过程 二、Yarn的资源调度 yarn的资源调度策略 三、Hive的语法树 四、Hive配置优化 五、数据开发 六、数据仓库 七、数据仓库开发流程 八、数仓分层 九、ETL和ELT 一、MapReduce的计算过程 分布式计算框架 需要编写代码执行&#xff0c;执行时…

Edge的使用心得与深度探索:优化浏览体验的技巧与建议

随着互联网的快速发展&#xff0c;浏览器已经成为我们日常生活中不可或缺的工具之一。在众多浏览器中&#xff0c;微软Edge凭借其稳定性、安全性和功能丰富性备受用户青睐。本文将深入探讨Edge浏览器的各种功能与技巧&#xff0c;帮助用户优化其浏览体验。 文章目录 Edge翻译插…

iOS 全平台矢量动画库:体积小巧、功能丰富 | 开源日报 No.227

airbnb/lottie-ios Stars: 24k License: NOASSERTION lottie-ios 是一个用于在 iOS 平台上本地渲染 After Effects 矢量动画的库。 该项目主要功能、关键特性、核心优势包括&#xff1a; 跨平台支持&#xff1a;可在 iOS, macOS, tvOS, visionOS, Android 和 Web 上使用实时渲…

ASP.NET医院手麻信息系统源码 .NET6.0+VUE

目录 麻醉记录单 复苏记录单 麻醉文书 手术麻醉信息 1、 体征监控记录 2、 麻醉用药信息 3、 手术事件登记 4、 手术状态变更 5、 麻醉医师交接 6、 其他辅助操作 手麻信息系统是以服务围术期临床业务工作的开展为核心&#xff0c;通过与床边监护设备以及医院H…

OpenCV从入门到精通实战(五)——dnn加载深度学习模型

从指定路径读取图像文件、利用OpenCV进行图像处理&#xff0c;以及使用Caffe框架进行深度学习预测的过程。 下面是程序的主要步骤和对应的实现代码总结&#xff1a; 1. 导入必要的工具包和模型 程序开始先导入需要的库os、numpy、cv2&#xff0c;同时导入utils_paths模块&…

Objective-C网络数据捕获:使用MWFeedParser库下载Stack Overflow示例

概述 Objective-C开发中&#xff0c;网络数据捕获是一项常见而关键的任务&#xff0c;特别是在处理像RSS源这样的实时网络数据流时。MWFeedParser库作为一个优秀的解析工具&#xff0c;提供了简洁而强大的解决方案。本文将深入介绍如何利用MWFeedParser库&#xff0c;以高效、…

【学习笔记二十】EWM TU运输单元业务概述及后台配置

一、EWM TU运输单元业务流程概述 TU是指车辆和运输单元在货场中,移动车辆或运输单元。 车辆是特定运输方式的专用化工具,车辆可以包含一个或多个运输单元,并代表运输车辆的实际实体。 运输单元是用于运输货物的车辆的最小可装载单位,运输单元可以是车辆的固定部分。 …

高仿小米商城用户端

高仿小米商城用户端(分为商城前端&#xff08;tongyimall-vue)和商城后端(tongyimall-api)两部分)&#xff0c;是Vue SpringBoot的前后端分离项目&#xff0c;用户端包括首页门户、商品分类、首页轮播、商品展示、商品推荐、购物车、地址管理、下订单、扫码支付等功能模块。 …

AndroidStudio 导出aar包,并使用

打包 1、确认当前选项是否勾选&#xff0c;如未勾选请先勾选。 2、勾选完成后重启Android Studio。 3、重启完成后&#xff0c;选中要打包的module 4、打包完成 使用 1.在项目中新建libs,放入aar文件。 2.修改配置 添加如下代码 flatDir {dirs("libs")}3.修改app…

档案集中管理的痛点怎么解决?

档案集中管理可能面临的痛点包括以下几个方面&#xff1a; 1. 档案分类和整理困难&#xff1a;档案集中管理会面临大量档案的分类和整理工作&#xff0c;可能导致混乱和困难。 解决方法&#xff1a; - 建立统一的档案分类规范和流程&#xff0c;确保所有档案都能按照规定的方式…

PMP报考别跟风!搞懂这些问题不踩坑!

1.PMP是什么&#xff1f; 1.PMP(Project ManagementProfessional)的中文全称是项目管理专业人士资格认证。该认证是由美国项目管理协会PMI在全球206个国家发起的针对项目经理的资格认证。 2.PMP认证是目前国际上项目管理领域认可度和含金量最高的证书。通过PMP就证明你的项目…

性能测试--数据库慢 SQL 语句分析

一 慢 SQL 语句的几种常见诱因 1. 无索引或索引失效 ​ 当查询基于一个没有索引的列进行过滤、排序或连接时&#xff0c;数据库可能被迫进行全表扫描&#xff0c;即逐行检查所有数据&#xff0c;导致性能显著下降。 ​ 虽然我们很多时候建立了索引&#xff0c;但在一些特定的…

Java学习笔记零基础入门1

目录 第一章 Java概述 1.1 什么是程序 1.2 Java 技术体系平台 1.3 Java 重要特点 1.4 Java 的开发工具 4.1 工具选择 1.5 Java 运行机制及运行过程 5.1 Java 语言的特点&#xff1a;跨平台性 5.2 Java 核心机制-Java 虚拟机 [JVMjavavirtual machine] 1.6 什么是JDK&…

掌握Node Version Manager(nvm):跨平台Node.js版本管理

&#x1f31f; 前言 欢迎来到我的技术小宇宙&#xff01;&#x1f30c; 这里不仅是我记录技术点滴的后花园&#xff0c;也是我分享学习心得和项目经验的乐园。&#x1f4da; 无论你是技术小白还是资深大牛&#xff0c;这里总有一些内容能触动你的好奇心。&#x1f50d; &#x…

人工智能培训老师大模型老师叶梓:LoRA技术的应用与实践

在深度学习领域&#xff0c;大型语言模型&#xff08;LLMs&#xff09;的微调是一个重要的研究方向&#xff0c;旨在将预训练的模型调整到特定任务上。然而&#xff0c;由于模型参数众多&#xff0c;这一过程往往需要大量的计算资源和内存。幸运的是&#xff0c;一种名为低秩适…