#独家
如何在wxml循环当中嵌套动态变量名?

2023-04-09 0 3,173

我目前有一个list列表循环,并且这个list列表里面有个name字段,是另外一个变量名的名称,演示结构如下:

Page({
  data: {
    user: [
      {name: "zhangsan", age: '10'},
      {name: "lisi", unique: '18'},
      {name: "laowang", unique: '35'},
    ],
    zhangsan:"是一个小学生",
    lisi:"是一个初中生",
    laowang:"是一个老司机"
    },
    ……

然后,在wxml渲染这个user列表,同时动态展示关联字段的信息:

<view wx:for="user">
  {{item.name}}今年{{item.age}}岁了,他的职业是:{{ [item.name] }}
</view>

职业是:后面这个{{ [item.name] }} 通过查资料,据说可以用方括号括起来,但是输出的依然是user里面的值,并没有和外部的变量关联起来,请问如何实现?

可能是小程序不支持这个语法,换个思路,把职业重新写到数组里,直接从数组取值就行了

data: {
    user: [
      { name: "zhangsan", age: '10' },
      { name: "lisi", unique: '18' },
      { name: "laowang", unique: '35' },
    ],
    zhangsan: "是一个小学生",
    lisi: "是一个初中生",
    laowang: "是一个老司机"
  },
  onLoad() {
    let user = this.data.user
    user.forEach(item => {
      item.job = this.data[item.name]
    })
    this.setData({ user })
  }
<view wx:for="{{user}}">
  {{item.name}}今年{{item.age}}岁了,他的职业是:{{item.job}}
</view>

或者是你把职业用对象包一下就能取到了

data: {
    user: [
      { name: "zhangsan", age: '10' },
      { name: "lisi", unique: '18' },
      { name: "laowang", unique: '35' },
    ],
    job:{
      zhangsan: "是一个小学生",
      lisi: "是一个初中生",
      laowang: "是一个老司机"
    }
  },
<view wx:for="{{user}}">
  {{item.name}}今年{{item.age}}岁了,他的职业是:{{job[item.name]}}
</view>
收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

1. JK下载官网所有资源来源于开发团队,加入会员即可下载使用!如有问题请联系右下角在线客服!
2. JK下载官方保障所有软件都通过人工亲测,为每位会员用户提供安全可靠的应用软件、游戏资源下载及程序开发服务。
3. JK开发团队针对会员诉求,历经多年拥有现今开发成果, 每款应用程序上线前都经过人工测试无误后提供安装使用,只为会员提供安全原创的应用。
4. PC/移动端应用下载后如遇安装使用问题请联系右下角在线客服或提交工单,一对一指导解决疑难。

JK软件下载官网 技术分享 如何在wxml循环当中嵌套动态变量名? https://www.jkxiazai.com/1451.html

JK软件应用商店是经过官方安全认证,保障正版软件平台

相关资源

官方客服团队

为您解决烦忧 - 24小时在线 专业服务