博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信小程序教学第三章第三节(含视频):小程序中级实战教程:视图与数据关联...
阅读量:5865 次
发布时间:2019-06-19

本文共 2081 字,大约阅读时间需要 6 分钟。

§ 视图与数据关联

本文配套视频地址:


开始前请把 ch3-3 分支中的 code/ 目录导入微信开发工具  

首先

首先我们要做的是什么呢?直接写模板逻辑吗?不是,给用户以良好的提示是很重要的,所以,我们要做的第一件事就是,加载中...

这里我们采用官方 loading 组件,所以现在就可以直接拿来用了。

修改 index.wxml,增加 loading 组件。很明显,变量 hiddenLoading 控制着它的展示与隐藏:

然后修改 index.js,处理 loading 组件的状态逻辑值 hiddenLoading

// 刚进入列表页面,就展示loading组件,数据加载完成后隐藏onLoad (options) {  this.setData({    hiddenLoading: false  })  this.requestArticle()},// 列表渲染完成后,隐藏 loading组件renderArticle (data) {  if (data && data.length) {    let newList = this.data.articleList.concat(data);    this.setData({    articleList: newList,    hiddenLoading: true    })  }}

分析页面结构

通过分析静态页面可以看出,这个列表是按照 为单位来分段,在每天的文章里又按照 文章 为单位继续细分。所以可以知道这个 wxml 的主体结构是循环套循环。所以我们可以初步写出下面的结构:

这里有一点需要 注意:在 wxml 做循环嵌套的时候,一定要重新定义 wx:for-item 字段。因为 wxml 循环中当前项的下标变量名默认为 index,当前项的变量名默认为 item。如果没有重新定义 item,在内层循环里通过 item 取到的值其实是外层循环的值。

下面我们就详细的分析下具体的结构,首先,每一天都有一个日期做开头,然后下面是一天的 4 篇文章。每篇文章分为左右结构,左边是标题,最多 3 行,超过的文字就用 … 表示。右边是一张文章的封面图,如果没有封面图就用默认的封面图。上面的日期如果是今天就显示今天,否则就直接显示月日,所以可以把 wxml 结构丰富成下面的样子:

{
{ group.formateDate }}
{
{ item.title }}

这里有一个图片处理的属性可以看看相应的 API 了解下:

页面结构搭建完了吗?并没有,还有一件很重要的事情要做。当我们的所有内容都展示完了,我们要友好的提醒用户,所以需要在最底端加上一个提示,把这些交互考虑进去之后的 wxml 就是下面这样的:

{
{ group.formateDate }}
{
{ item.title }}

到此,列表的页面与大体数据可以说是告一段落了,下一节我们介绍下如何增加阅读标识功能及分享功能、下拉更新功能

iKcamp官网:

访问官网更快阅读全部免费分享课程:《iKcamp出品|全网最新|微信小程序|基于最新版1.0开发者工具之初中级培训教程分享》。

包含:文章、视频、源代码

iKcamp原创新书《移动Web前端高效开发实战》已在亚马逊、京东、当当开售。

iKcamp最新活动

报名地址:

“天天练口语”小程序总榜排名第四、教育类排名第一的研发团队,面对面沟通交流。

转载地址:http://jhynx.baihongyu.com/

你可能感兴趣的文章
深度操作系统 15 Alpha2 —— 带你领略不一样的深度
查看>>
为神马说写程序是很艰难的
查看>>
《DNS与BIND(第5版)》——4.9 增加更多区域
查看>>
谁是抛弃 WinXP 速度最快的国家?
查看>>
jquery插件的编写
查看>>
AngularJS 1.3 提升了 HTML 表单
查看>>
《拥抱机器人时代——Servo杂志中文精华合集》——导读
查看>>
Terraform 0.9.8 发布,基础架构管理工具
查看>>
《Exchange Server 2010 SP1/SP2管理实践》一1.3 本书中域控制器的概念
查看>>
1、solr包结构介绍,solrCore的安装配置,solr部署到Tomcat,多solrCore配置,配置中文分词器,界面功能介绍,Schema.xml的基本使用,数据导入...
查看>>
CentOS7更改时区
查看>>
2013 年开源中国 10 大热门 Java 开源项目
查看>>
《威胁建模:设计和交付更安全的软件》——2.5 小结
查看>>
MySQL 集群服务简介
查看>>
《Ember.js实战》——1.5 小结
查看>>
Aliware 云产品领航 2017—— 企业级互联网架构 Aliware 全新升级
查看>>
《移动App测试的22条军规》——第5章,第5.3节规范与习惯
查看>>
聊聊Cassandra-概览
查看>>
《锋利的SQL(第2版)》——1.9 SQL书写规范
查看>>
《云数据管理:挑战与机遇》2.1.7 CAP理论
查看>>