收藏
回答

wxml 怎么获取动态变量?

在wxml页面中想要获取一个动态的变量,但是总是被解析成字符,例如{{ 'view_' + index}} 解析出来是view_1、view_2、view_3…… ,怎么样获取变量的值呢? 尝试过{{ ['view_' + index] }} 但是一样不行,小程序里要怎么解决呢?

回答关注问题邀请回答
收藏

6 个回答

  • 少侠
    少侠
    2020-11-03
    你见过js,能直接手动拼出一个变量吗?除非是对象属性:let a = { name: 'name'}; --> a['name']
    
    2020-11-03
    有用 1
    回复
  • 庄国栋
    庄国栋
    05-22

    我也有类似的场景:其实就是通过字符串作为变量名,来读取data对应变量的值。

    使用场景是在模板中,所以不能直接指定{{变量}}, 而是通过另外的数据“变量名”来访问。这个在js里面倒是好解决,this.setData({["变量名"]:xx}), 但是在wxml中,尝试了好几种都不行

    05-22
    有用
    回复 1
    • 庄国栋
      庄国栋
      05-23
      用了一种变通的方案,在data域固定一个变量,然后把需要动态的变量作为固定变量的一个属性,这样就可以访问了
      05-23
      回复
  • Agoni 🎈
    Agoni 🎈
    2021-04-01

    我也想这样做,你有找到合适方案嘛

    2021-04-01
    有用
    回复
  • Stern
    Stern
    2020-11-03

    这个东西 你尝试下 wxs能不能行。

    我只做过Vue版本的。

    <cardItem :list="calculateList(activeIndex)" />
    
    computed: {
        calculateList(index) {
          return index => this[`jobApplyList${index}`]
        }
      },
    
    2020-11-03
    有用
    回复 1
    • xjr
      xjr
      2021-03-29
      wxs好像不支持模板字符串return [xxx]直接报错。
      2021-03-29
      回复
  • 默
    2020-11-03

    想设置动态class?

    2020-11-03
    有用
    回复
  • Martin Long
    Martin Long
    2020-11-03

    你的动态变量是什么,看不出你的问题

    2020-11-03
    有用
    回复 1
    • Martin Long
      Martin Long
      2020-11-03
      如果你是 对象的话,应该是 obj['view_'+index]  ,然后你的对象是这样的 obj={view_1:'',view_2:''}
      2020-11-03
      回复
登录 后发表内容
问题标签