前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >微信小程序|列表渲染-for循环

微信小程序|列表渲染-for循环

作者头像
算法与编程之美
发布2020-04-15 15:46:10
3.5K0
发布2020-04-15 15:46:10
举报

问题描述

大家学习程序设计都知道for循环,而且很多编程都需要用到for循环。在制作微信小程序特别是列表页面的时候,是否有遇到过列表元素很多或者不确定的情况,如果一个一个的去敲就会有很大的工作量非常的麻烦。那么可不可以用for循环来解决这个问题呢?

解决方案

编程的人都知道for循环是一种循环语句。当元素的数量很多的时候,用for循环来遍历元素解决一些问题就显得非常的方便。微信小程序也一样,大家通常看到的一些列表页面都是由很多的元素组成的,如果一个框框一个框框的去写代码效率就特别低了。但是用小程序中wx:for属性就可以实现对列表的快速渲染了。

代码实现:

在js 中对页面内容定义各种数据构成一个对象数组;

novel是对该组数据的命名。

代码语言:javascript
复制
Page({

  data: {

    novel:[

      {

        name: "《平凡的世界》",

        comment: "中国当代城乡社会生活的长篇小说",

        imagePath: "/pages/img/小说1.jpg"

      },

      {

        name: "《骆驼祥子》",

        comment: "优秀的现实主义小说",

        imagePath: "/pages/img/小说2.jpg"

      },

      {

        name: "《家》",

        comment: "入选20世纪中文小说100强(第8位)",

        imagePath: "/pages/img/小说3.jpg"

      },

      {

        name: "《悲惨世界》",

        comment: "雨果现实主义小说中最成功的一部代表作",

        imagePath: "/pages/img/小说4.jpg"

      },      

    ]

  }

})

在wxml中对页面进行渲染,将绑定的数据输出到视图中;

wx:for="{{}}"属性:实现视图层for循环的控制结构;

使用for循环就需要将之前定义的:

{{novel.name}}、{{novel.comment}}、{{novel.imagepath}}

改为

{{item.name}}、{{item.comment}}、{{item.imagepath}},item为一个抽象的循环控制变量。如果不需要遍历所有的数据那么就在之前定义的{{novel[1].~~}}中加一个索引(你需要第几位就加第几位的索引);

{{index+1}}:循环控制变量。

代码语言:javascript
复制
<view>

  <text >小说推荐</text>

  <view wx:for="{{novel}}">

    <image  src="{{item.imagePath}}"></image>

    <view>

    <text>第{{index+1}}部:{{item.name}}</text>

    <text>评价:{{item.comment}}</text>

    </view>

  </view>

</view>

在wxss中对页面元素进行布局。

代码语言:javascript
复制
.container1{

  height: 100vh;

  display: flex;

  flex-direction: column;

  justify-content: space-around;

  align-items: center;

}

.novel{

  display: flex;

}

.novel-details{

  display: flex;

  flex-direction: column;

  width: 500rpx

}

.novel-image{

  width: 200rpx;

  height: 200rpx

}

效果图:

结语

在微信小程序中使用for循环对列表进行渲染非常的方便而且很灵活。这次的列表渲染需要理解item和index两个循环控制变量以及wx:for属性。另外对页面元素的调整布局也很重要,要让页面看起来美观。

END

主 编 | 王文星

责 编 | 江汪霖

where2go 团队

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-04-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法与编程之美 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档