微信小程序开发系列(二十四)·wxml语法·列表渲染·wx:for-item 和 wx:for-index

news2024/12/26 11:10:57

目录

1.  如果需要对默认的变量名和下标进行修改,可以使用wx:for-item 和 wx:for-index

2.  将 wx:for 用在 标签上,以渲染一个包含多个节点的结构块

方法一

方法二

3.  总结

3.1   wx:for-item 和 wx:for-index总结

3.2   总结


1.  如果需要对默认的变量名和下标进行修改,可以使用wx:for-item 和 wx:for-index

①使用 wx:for-item 可以指定数组当前元素的变量名

②使用 wx:for-index 可以指定数组当前下标的变量名

        找到profile.wxml文件,对数字和对象进行渲染:

<!-- 数组 -->
<view wx:for="{{ fruitList }}" wx:key="id">{{ item.name }}</view>

<!-- 对象 -->
<view wx:for="{{ obj }}" wx:key="index">{{ item }} - {{  index }}</view>

        使用wx:for-item 和 wx:for-index,两个属性需要和 wx:for 写在同一个组件上,在重命名、修改以后,需要使用最新的变量名:

<!-- 数组 -->
<view wx:for="{{ fruitList }}" wx:key="id" wx:for-item="fruitItem" wx:for-index="i">
  {{ fruitItem.name }}
</view>

<!-- 对象 -->
<view wx:for="{{ obj }}" wx:key="key" wx:for-item="value" wx:for-index="key">
  {{ value }} - {{  key }}
</view>

2.  将 wx:for 用在<block/> 标签上,以渲染一个包含多个节点的结构块

①<block /> 并不是一个组件,它仅仅是一个包装元素,不会在页面中做任何渲染,只接受控制

②性<block /> 标签在 wxml 中可以用于组织代码结构,支持列表渲染、条件渲染等

        找到profile.js文件,对价格进行渲染:


Page({
  data:{
      numList: [1,2,3],
      fruitList: [
        { id: 1, name: '🍎', price:66 },
        { id: 2, name: '🍋', price:77 },
        { id: 3, name: '🍅', price:88 }
      ],
      obj:{
        name: 'tom',
        age: 10
    }
  }

})

方法一

        找到profile.wxml文件,编写代码:

<view wx:for="{{ fruitList }}" wx:key="id" wx:for-item="fruitItem" wx:for-index="i">
  <view>姓名:{{ fruitItem.name }}</view>
  <view>价格:{{ fruitItem.price }}</view>
</view>

方法二

        找到profile.wxml文件,编写代码:

<!-- 方法二 -->
<block wx:for="{{ fruitList }}" wx:key="id" wx:for-item="fruitItem" wx:for-index="i">
  <view>姓名:{{ fruitItem.name }}</view>
  <view>价格:{{ fruitItem.price }}</view>
</block>

        block不是一个组件,只是渲染元素,也就只是包装元素,可以组织代码结构,支持列表渲染。

        block不会在页面做任何渲染,只接受控制属性。

3.  总结

3.1   wx:for-item 和 wx:for-index总结

        wx:for-item 和 wx:for-index 是小程序中用于遍历数组或对象的列表的特殊属性。

  • wx:for-item 用于指定在每次遍历中当前项的别名。
  • wx:for-index 用于指定在每次遍历中当前索引的别名。

        这两个属性通常与 wx:for 指令一起使用,在模板中实现循环渲染。

        例如,假设有一个名为 fruitList 的数组,可以使用如下代码进行遍历和渲染:

<view wx:for="{{ fruitList }}" wx:key="id" wx:for-item="fruitItem" wx:for-index="index">
  <text>索引:{{ index }}, 水果名称:{{ fruitItem.name }}</text>
</view>

        在每次循环中,wx:for-item="fruitItem"将当前项的值赋给 fruitItem 这个别名变量;wx:for-index="index"则将当前索引的值赋给 index 这个别名变量。通过这种方式,可以方便地在模板中使用当前项和索引的值。

        请注意, wx:key="id" 是必须的,用于唯一标识每个循环项,以提高渲染性能。

3.2   <block>总结

        在小程序中,<block> 标签通常用于包裹多个节点,起到类似于 <div> 的作用,但不会在页面中额外增加节点。如果想要在 <block> 标签上使用 wx:for 进行循环渲染,可以按照以下方式操作: 

<block wx:for="{{ fruitList }}" wx:key="id" wx:for-item="fruitItem" wx:for-index="index">
  <view>索引:{{ index }}, 水果名称:{{ fruitItem.name }}</view>
</block>

        在这个例子中,<block> 标签包裹了一个 <view> 标签,通过 wx:for 遍历 fruitList 数组,并将每个项赋值给 fruitItem,同时将索引赋值给 index,然后在 <view> 标签内部展示索引和水果名称。
        使用 <block> 标签可以在不增加额外节点的情况下实现对多个节点的整体控制,结合 wx:for 可以很好地实现列表数据的循环渲染。

微信小程序开发_时光の尘的博客-CSDN博客

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

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

相关文章

Publii和GitHub:搭建个人网站的完美组合

在数字时代&#xff0c;拥有一个个人网站已经非常普遍了&#xff0c;但是&#xff0c;很多人因为技术难题而望而却步。现在&#xff0c;有了Publii&#xff0c;这一切都将变得简单。Publii是一个静态网站生成器&#xff0c;它允许你在本地计算机上创建和管理内容&#xff0c;然…

​项目文章 | METTL3敲减通过m6A-YTHDC2介导的AMIGO2调控抑制RA-FLS活化

类风湿性关节炎&#xff08;RA&#xff09;是一种自身免疫性关节疾病&#xff0c;其特征是慢性关节滑膜炎、滑膜增生过度和关节损伤。近年来&#xff0c;N6-甲基腺苷&#xff08;m6A&#xff09;修饰的RNA在癌症和自身免疫疾病&#xff08;包括RA&#xff09;中的调控作用受到广…

全球科技创新领域大检阅“2024上海国际智能科技及创新展览会”

随着科技的飞速发展&#xff0c;创新成为了推动社会进步的核心动力。在这样的背景下&#xff0c;“2024上海国际科技及创新展览会”应运而生&#xff0c;旨在汇聚全球智能科技领域的精英&#xff0c;共同展示最新的科技成果&#xff0c;探讨未来的发展方向。 本次展会将于2024年…

在人工智能领域,如何平衡技术进步和人类安全?

人工智能&#xff08;AI&#xff09;技术的迅速发展为人类社会带来了许多潜在益处&#xff0c;但同时也引发了一系列安全和伦理挑战。在这个领域&#xff0c;如何平衡技术进步与人类安全成为了至关重要的议题。本文将探讨在人工智能领域中平衡技术进步与人类安全的方法&#xf…

Java安全 CC链3分析

Java安全 CC链3分析 cc链3介绍前置知识类加载类加载的方法例1.forName例2.getSystemClassLoader总结 javassist模块 cc链3分析TemplatesImpl类demo2TrAXFilter类InstantiateTransformer类 最终exp基于LazyMap链基于TransformedMap链 cc链3介绍 cc链3的后半部分与cc链1相同&…

阿里云服务器怎么使用?3分钟搭建网站教程2024新版

使用阿里云服务器快速搭建网站教程&#xff0c;先为云服务器安装宝塔面板&#xff0c;然后在宝塔面板上新建站点&#xff0c;阿里云服务器网aliyunfuwuqi.com以搭建WordPress网站博客为例&#xff0c;来详细说下从阿里云服务器CPU内存配置选择、Web环境、域名解析到网站上线全流…

【梳理】k8s使用Operator搭建Flink集群

文章目录 架构图安装cert-manager依赖helm 安装operator运行集群实例k8s上的两种模式&#xff1a;Native和Standalone两种CRDemo1&#xff1a;Application 单任务Demo2&#xff1a;Session 多任务创建ingress 总结 架构图 参考&#xff1a;部署验证demo 安装cert-manager依赖 …

C# LINQ基础

LINQ基础 1. 入门2. 运算符流语法2.1 连续使用查询运算符2.2 使用Lambda表达式2.2.1 Lambda表达式及Func的方法签名2.2.2 Lambda表达式和元素类型2.2.3 自然排序2.2.4 其他查询运算符 3 查询表达式4 延迟执行4.1 重复执行4.2 捕获的变量4.3 延迟加载的工作原理4.4 查询语句的执…

ARM-v7 GCC 环境下的大小端转换实现

1.前言 什么是大小端转换&#xff1f;为什么叫大小端转换&#xff1f; Jonathan Swift的《格列佛游记》中记载&#xff0c;有两国因为剥鸡蛋的方式不同&#xff0c;即一国要求将熟鸡蛋的较大的一端&#xff08;大端&#xff0c;big endian&#xff09;敲碎然后剥壳&#xff0c;…

NLP_文本数据分析_3(代码示例)

目标 了解文本数据分析的作用.掌握常用的几种文本数据分析方法. 一、 文件数据分析介绍 文本数据分析的作用: 文本数据分析能够有效帮助我们理解数据语料, 快速检查出语料可能存在的问题, 并指导之后模型训练过程中一些超参数的选择. 常用的几种文本数据分析方法: 标签数量分…

【嵌入式——QT】Model/View

【嵌入式——QT】Model/View 基本原理数据模型视图组件代理Model/View结构的一些概念QFileSystemModelQStringListModelQStandardItemModel自定义代理 基本原理 GUI应用程序的一个很重要的功能是由用户在界面上编辑和修改数据&#xff0c;典型的如数据库应用程序&#xff0c;数…

leetcode刷题(javaScript)——字典哈希表相关场景题总结

在 JavaScript 刷题中&#xff0c;字典&#xff08;Dictionary&#xff09;和哈希表&#xff08;Hash Table&#xff09;通常用来存储键值对&#xff0c;提供快速的查找、插入和删除操作。它们在很多算法题目中都有广泛的应用&#xff0c;特别是在需要快速查找元素或统计元素出…

Unity插件之天气系统UniStorm

首先呢&#xff0c;它是一款强大的动态昼夜天气系统&#xff0c;能够以较快的帧速率创建AAA级动态生成的天气、照明和天空&#xff0c;并且具有300多个可定制的组件&#xff0c;允许用户创建任何可以想象的环境。 第一步&#xff1a;他需要两个物体Camera摄像机、Player播放器…

用于回归的概率模型

机器学习中的回归方法&#xff1a; 机器学习中的概率模型 机器学习&#xff5c;总结了11种非线性回归模型&#xff08;理论代码可视化&#xff09; 高斯过程回归&#xff1a; Gaussian Processes for Machine Learning GPML——Datasets and Code Gaussian Processes 学…

淘宝商品详情数据丨商品搬家丨商品采集丨商城建站

淘宝商品详情数据、商品搬家、商品采集以及商城建站都是电子商务领域的重要环节&#xff0c;它们共同构成了一个完整的在线销售体系。下面我将分别对这几个概念进行详细的解释。 请求示例&#xff0c;API接口接入Anzexi58 一、淘宝商品详情数据 淘宝商品详情数据指的是在淘宝…

react native封装ScrollView,实现(滑到底部)和(滑到顶部+手指继续向下滑)时拉取新数据

里面的tw是在react native中使用tailwind的第三方库 只求读者把样式看个大概&#xff0c;主要还是功能的实现 ScrollView的官方文档如下 https://reactnative.cn/docs/scrollview import tw from twrnc import { View, Text, ScrollView, RefreshControl } from react-native …

LED显示控制芯片SM5166PF:可消除LED显示屏拖影

在数字化时代的浪潮下&#xff0c;LED显示屏作为信息传播的重要媒介&#xff0c;其显示质量和效果日益受到人们的关注。尤其在商业广告、体育赛事、公共信息发布等领域&#xff0c;高清、流畅、稳定的显示效果显得尤为重要。然而&#xff0c;传统的LED显示屏在刷新率和显示效果…

金智维售前总监屈文浩,将出席“ISIG-RPA超级自动化产业发展峰会”

3月16日&#xff0c;第四届「ISIG中国产业智能大会」将在上海中庚聚龙酒店拉开序幕。本届大会由苏州市金融科技协会指导&#xff0c;企智未来科技&#xff08;RPA中国、AIGC开放社区、LowCode低码时代&#xff09;主办。大会旨在聚合每一位产业成员的力量&#xff0c;深入探索R…

在Linux以命令行方式(静默方式/非图形化方式)安装MATLAB(正版)

1.根据教程&#xff0c;下载windows版本matlab&#xff0c;打开图形化界面&#xff0c;选择linux版本的只下载不安装 2.获取安装文件夹 3.获取许可证 4.安装 &#xff08;1&#xff09;跳过引用文章的2.2章节 &#xff08;2&#xff09;本文的安装文件夹代替引用文章的解压IS…

使用Julia语言及R语言进行格拉布斯检验

在日常的计量检测工作中经常会处理各种数据&#xff0c;在处理数据之前会提前使用格拉布斯准则查看数据中是否存在异常值&#xff0c;如果存在异常值的话应该重新进行计量检测&#xff0c;没有异常值则对数据进行下一步操作。判断异常值常用的格拉布斯方法基于数据来自正态分布…