收藏
回答

setData使用[...]进行动态key赋值,wxml如何获取?

原data

{

    "arr":[0,1,2],

}

js 处理业务流程:

var arr =[0,1,2];

for(var i = 0;i<arr.length;i++){

    var key = "aaaa" + i;


    this.setData({

        [key] : "aaaaa",

    });

}


输出data结果是

{

    "arr":[0,1,2],

    "aaaa0":"aaaaaa",

    "aaaa1":"aaaaaa",

    "aaaa2":"aaaaaa",

}


请问wxml如何循环arr调用 aaaa0/aaaa1/aaaa2

最后一次编辑于  11-23
回答关注问题邀请回答
收藏

3 个回答

  • Butterfly。
    Butterfly。
    11-25

    好像不行的,小伙子,我之前也是这样搞过。

    11-25
    赞同
    回复
  • 谦光和气
    谦光和气
    11-23

    <view  wx:for="{{object}}" wx:for-index="key">

    <view>{{key}}:{{item}}</view>

    </view>

    看看这个是否是你要的,你测试一下,wxml输出对象key和value,只要key,可以改一下


    11-23
    赞同
    回复 2
    • Kenny.Law
      Kenny.Law
      11-23
      可能你没理解我说的是什么
      11-23
      回复
    • 谦光和气
      谦光和气
      11-23回复Kenny.Law
      我确实没有理解你的意思,我理解成,你可能想用数组来构造一个动态对象,然后在wxml输出这个动态对象(包含键和值)。wxml里面没有可以调用的,我也不能理解,循环数组去调用key,我只能理解你想输出对象(由数组动态构造的对象)。如果想在wxml做数据的处理。可以考虑wxs写一个处理的脚本。
      11-23
      回复
  • 一世倾心
    一世倾心
    11-23

    我觉得这篇文章应该能帮助你  https://www.cnblogs.com/yangyang63963/p/11576643.html

    11-23
    赞同
    回复 8
    • Kenny.Law
      Kenny.Law
      11-23
      文章只有js里的赋值和取值,这些我知道,我说的是视图层wxml里如何取值
      11-23
      回复
    • 一世倾心
      一世倾心
      11-23回复Kenny.Law
      我给你这个的意思是说你这个setData这个写的不对,你说这些你都知道,为啥还闹错了?    输入的data值   arr内还是原先那些,你刚处理的那些值都没在arr里面怎么取出来?
      11-23
      回复
    • Kenny.Law
      Kenny.Law
      11-23回复一世倾心
      好,我改一下内容,那么现在wxml如何取得data里的 aaaa0/aaaa1/aaaa2
      11-23
      回复
    • 一世倾心
      一世倾心
      11-23回复Kenny.Law
      你是说data内的?而不是arr内的?  要是arr内的话直接for循环 arr 能取出相对应的数据
      11-23
      回复
    • 一世倾心
      一世倾心
      11-23回复一世倾心
      我明白你想问的什么问题了,兄弟我试了好几个都不行,这样行不通,你最好是外面加一个壳子了
      11-23
      回复
    查看更多(3)
问题标签