收藏
回答

{{ }} 语法局限性

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 需求 {{ }} 客户端 7.0.5 2.7.0

有这养的需求,我看过论坛一年多以前有人提过。至今未解决。问题如下:

      {{}}  里面的变量通过拼接,成一个字符串,然后取值,动态字符串当key 去它对应的值。


不少人有这样的需求,我通过使用 wxs 还是没办法这样去做。希望能够得到解决。

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

3 个回答

  • 燚
    2019-07-05

    请描述清楚你的问题

    2019-07-05
    赞同
    回复 5
    • 时光荏苒不忘初心
      时光荏苒不忘初心
      2019-07-05

      wxml :


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

      <input value="{{'value'+index}}"></input>

      </view>



      js :


      arr:[

      {a:1},

      {a:2}

      ],

      value0:1,

      value1:2,



      期待的显示  1 ,2

      实际显示  value0,value1


      不知道我通过这个例子是否描述清楚了?过去一年多时间,好多人有这样的需求,都在社区帖子里。




      2019-07-05
      回复
    • 海贼
      海贼
      2019-07-05回复时光荏苒不忘初心

      我表示无语

      2019-07-05
      回复
    • 海贼
      海贼
      2019-07-05

      那个value本身就是字符串,拼接上遍历的索引 index,肯定是value0,value1,你要达成你的期望,直接

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

      <input value="{{value.a}}"></input>

      </view>

      这样不久ok?


      2019-07-05
      回复
    • 时光荏苒不忘初心
      时光荏苒不忘初心
      2019-07-05回复海贼

      那你就慢慢无语吧,这只是个小例子。旨在说明需求。没遇到问题别说话。

      2019-07-05
      回复
    • 'yi
      'yi
      2019-07-05回复海贼

      他应该是想说拼接成的  字符串value0 value1  再去这里面取对应的值。。

      2019-07-05
      回复
  • 钟赣
    钟赣
    2019-10-10

    楼主说的不错 。应用场景 不一样 ,例如我的界面有N个分栏 动态的 ,我就希望用指定ID来存储数据   这样只要刷新单个,不用setdata 刷新所有。这个功能需要 今天测试{{['page_'+id]}} 这样 有成功取到过一次 不知道是不是我自己看错了

    2019-10-10
    赞同 1
    回复
  • 亮子🔥
    亮子🔥
    2019-07-05

    <view wx:for="{{[{a0:10,a1:3},{a0:10,a1:3}]}}">

    <view>{{item['a'+index]}}</view>

    </view>

    这个意思?

    2019-07-05
    赞同
    回复 3
    • 时光荏苒不忘初心
      时光荏苒不忘初心
      2019-07-05

      不是,只要是含有 json 结构,通过  []  就可以取值。直接的可变变量,没办法取值。我已经通过你这种方式变通的实现了效果,相比较来说麻烦了点。

      2019-07-05
      回复
    • 亮子🔥
      亮子🔥
      2019-07-05

      哦  能帮助到你  就行

      2019-07-05
      回复
    • 时光荏苒不忘初心
      时光荏苒不忘初心
      2019-07-05回复亮子🔥

      多谢了。

      2019-07-05
      回复
登录 后发表内容