文章目录

  • 一、主要内容
  • 二、滚动框的实现
  • 三、星星组件的实现
  • 四、效果图
  • 五、结尾

一、主要内容

影院热映横向滚动框星星评分组件(满分10分,五颗星,一颗两分)

二、滚动框的实现

1、分析

不管是影院热映还是豆瓣热门,都是一样的布局,所以我们只要将影院热映这一大盒子实现即可
分析图如下:


2、首页单项布局

在index.wxml文件中,我们先写出modelGroup(模型组)、modelTop(模型的顶部)、modelTitle(模型标题)、more(查看更多)、itemNavigator(一项电影导航图)


说明在navigator中的东西我们可以多复制几份,为了更好理解

3、图片外部链接

上述src导入外部链接,可以在豆瓣电影中随便选取一部电影,右键点击,复制图片地址即可


4、首页布局

index.wxss图1:


index.wxss图2:


5、增加样例

我们多复制四个样例,一行五项,更好理解


6、小修改

在滚动图滚动到最右边后,我们发现和上面的查看更多是不对齐的,这是因为在itemNavigator(每一项的导航图)中加入了margin-right:20rpx(每一个导航盒子右边空出20rpx),我们可以只让最后一项的margin-right等于0


说明

添加这么多项肯定不纯粹的用复制粘贴呐,不然一个小项目光wxml文件就几百上千行了,后面我们会用到wx:for列表渲染,大家目前先了解这样布局(〃‘▽’〃)

三、星星组件的实现

1、分析

现在还差每一项下面的星星和评分,评分当然目前自己写个text就行,那么星星要对应的上咱的评分,满分10分,一颗星(高亮星星)2分,半颗星(半亮星星)1分,没星星(灰色星星)0分
eg】如果是7.4分,那么要出现三颗星和一颗半星,一颗不亮的星星(总共加起来5颗),为了单独解决这个问题,我们可以自定义stars组件来解决问题

2、创建和使用stars组件

大家可以参考我之前写的 豆瓣评分小程序Part-1 ,这里不过多讲述

二、实现】中的【2、建立searchbar组件

在index.json文件中要使用stars组件,之后在index.wxml文件中movieName(电影名)后面使用即可


3、加入星星图片


4、增加组件属性与使用

我们在stars.js文件中增加它的属性,type(类型)是数字型,value(值)默认0,那么我们就可以在首页index.wxml文件中使用(因为主页中rate评分这一属性会涉及到我们接下来关于星星的问题)
stars.js图1:


index.wxml图2:


5、stars初步wxml文件

先rateGroup(评分组)大盒子套起来,但是发现我们只能先把这三张图片插进去,并不能根据评分是多少让每一张出现的次数变化


6、stars组件wxss文件


7、解决星星问题

我们可以通过wx:for列表渲染,让图片重复出现
eg:
评分7.2,对应的一整颗星星(高亮星星)应该有3个,那么可以创建一个数组,建立for循环,这个数组里可以存放1, 2 ,3 三个元素,那么相应的在image里使用wx:for,就会渲染三次图片,从而让图片出现三次

Q:wx:for列表渲染是什么?

A:可以查看微信官方文档 列表渲染 ,简单的用法也可以查看为之前的博客 零基础微信小程序Day3

② 在stars组件的js文件中解决

在lifetimes(生命周期)字段中的attached()函数中进行编写

Q:为什么在lifetimes中写,这是啥?

A:可以查看微信官方文档 组件生命周期, 可以先记下来,就在这里面写

stars.js图1:


可是wx:for只能渲染列表(数组),所以我们建立对应的数组,是几颗星对应数组里有几个元素

stars.js图2:


对应的咱就要改写相应的wxml文件
stars.wxml图3:


8、增加并使用rateNum

为了增强逻辑性,我们可以创建rateNum变量(rateNum=rate存在?并且大于0?如果是的那就保留一位小数点,否则就赋值“未评分”)

stars.js图1


stars.wxml图2


9、更新数据

接下来setData是一种数据更新的模板、套路,一回生二回熟

setData 函数用于将数据从逻辑层发送到视图层(异步),同时改变对应的 this.data 的值(同步)

四、效果图

效果图1:

效果图2:

五、结尾

这里只简单修改了两组数据,但是大家会发现这些数据其实都是死的,都是我们人为编写的。那么想要活的数据,就要涉及到API接口了,而且wxml文件中也不该如此的繁冗,我们下一篇文章进行讲述

有任何问题的话,欢迎各位指出~ ヾ(◍°∇°◍)ノ゙

豆瓣评分小程序Part-2相关推荐

  1. 豆瓣评分小程序Part-3

    文章目录 一.主要内容 二.wx:key 三.单布局实现 四.整体布局 五.效果图 六.结尾 一.主要内容 主页面"影院热映"."近期热门剧集"."近 ...

  2. 豆瓣评分小程序星星评分组件

    豆瓣评分小程序星星评分组件 评分功能:小星星,多处使用,所以抽出成为component组件,然后在需要使用的页面按需注册导入 1.1,新建component名为stars 1.2,然后按需在页面注册 ...

  3. 微信小程序从无到有(仿写豆瓣评分小程序)

    目录标题 写在前面 页面顶部 搜索栏 主页搜索栏 搜索详情页 首页板块 电影评分 请求网络数据 查看更多页面 详情页设计 评论页设计 项目文件整体结构 运行效果演示 项目总结 写在前面 前段时间跟着某 ...

  4. 豆瓣评分小程序Part-1

    文章目录 一.主要内容 二.实现 三.效果图 四.结尾 一.主要内容 搜索栏的实现(主页面是导航栏,点进去变成搜索栏) 导航栏图1: :搜索栏图2: 二.实现 1.基本布局 首页是index,打出&q ...

  5. 基于微信小程序的评分小程序

    文末联系获取源码 开发语言:Java 框架:ssm JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7/8.0 数据库工具:Navicat11 开发软件:eclipse/my ...

  6. 微信小程序无法访问豆瓣API, 豆瓣图书小程序示例

    一.访问豆瓣API 官方API地址:图书 Api V2 按照API的示例,图书检索的URL为:https://api.douban.com/v2/book/search?q=检索信息&star ...

  7. 实现豆瓣电影小程序(任性coding)

    1.简述 本人不是资深电影迷 ,但是喜欢看电影,有好的电影就会购票去电影院仔(hu)细(hu)观(da)赏(shui). 嗯....,前几天刚刚看了一部电影<追龙2>,之前一直都没看过追龙 ...

  8. 如何在微信给视频照片做征集投票评分,教你快速制作投票评分小程序

    免费在微信发起照片视频文档软文征集投票活动,支持公众号投票,小程序投票,微信照片征集投票 ​​       很多校园社团.公司,都需要组织各种各样的评选投票打分活动,例如:校园歌手大赛.最美宿舍评比. ...

  9. 解决小程序api为http和豆瓣限制小程序使用api问题

    关于豆瓣api的调用,前几天使用的时候发现了很多问题,就是官方限制了小程序使用api,尽管豆瓣官方提供的接口就是https的但是小程序就是无法获取豆瓣的数据,然后我就找了很多种方法,发现了几点: 1. ...

最新文章

  1. mysql 允许远程登录
  2. 一大波数据来袭 网络桃色陷阱暗藏致命危机
  3. Mac 技术篇-苹果笔记本休眠启动后WIFI连接转圈卡死置灰不可用解决方法,mac通过终端杀进程实例演示
  4. git 历史版本导出_Git基础知识(九)
  5. qt给qdialog加一个滚动条_这些小程序技巧,你敢说你一个用不到?
  6. 恒大紧急辟谣“资金链断裂”,股价止跌回升
  7. 1005. Maximize Sum Of Array After K Negations
  8. c语言函数调用费波那楔数列,【算法】费波那契数列算法
  9. Tkinter文件夹选择路径功能+打开位置目录功能(Python3.6.X)
  10. 小米红米有锁机如何刷机升级MIUI12.5系统-完美解锁机刷机教程
  11. 学习HALCON视觉必会的入门知识| 东哥机器视觉培训
  12. bugly android升级,android 新版本升级示例源码(bugly)
  13. 【找工作必读】来自IT公司速查手册的各大IT公司薪资
  14. makefile中wildcard的理解
  15. 使用服务器端控制AJAX页面缓存
  16. 双重检查锁与单例模式
  17. 论文浅尝 | MISC:融合COMET的混合策略模型进行情感支持对话
  18. 狄利克雷分布的matlab代码实现和R语言函数调用
  19. SqlServer中with(nolock)详解
  20. 医院信息系统的业务功能详解

热门文章

  1. 极光科研中心 · 资源开发区(ACM工程/MEP工程/STL标准库/先进书写)
  2. 2020-11-09 mintUI框架 ios没法上拉问题
  3. 杂谈(10)分享xiaobenny的辞职信
  4. oracle R11g高级安装详细教程
  5. 看明星的百科,可以学习
  6. matlab调用python编译器_Matlab转python编译器-Matlab/Octave转Python编译器(smop) 0.2.5 免费版 - 河东下载站...
  7. p12文件和provision profile文件作用
  8. 区块链100讲:能够证明你是你的数字签名和多重签名
  9. php获取所有url地址_php 获取完整url地址
  10. 苹果5S A1528,5C A1526 升级移动4G网络教程