收藏
回答

wxml页面上变量如何拼接?

首先声明我本人是小程序新手.

今天项目上遇到一个问题 页面上的下拉菜单是循环出来的 所以导致选择的时候下拉菜单一起改变了内容。现在想法是把页面上的变量做成活的,js中setdata里面已经实现了,就是页面不知道如何拼接。
想把 页面上的 itemName.options[index] 中的 index 变成 页面上可拼接的活变量
wxml页面
<view class="body">
<view wx:for="{{comprehensiveArr}}" wx:for-index="idx" wx:for-item="itemName">
  <view class="section" wx:if="{{itemName.item_type == 10}}">
    <picker bindchange="bindPickerChange" value="{{index}}" range="{{itemName.options}}" id='{{itemName.index_item_id}}' name='{{itemName.index_item_id}}'>
      <view class="titel" style="font-size:{{font1+'rpx'}}; color:{{color1}};">{{itemName.item_name}}</view>
      <image src="/images/icon_xiala.png"></image>
      <view class="picker">
        {{itemName.options[index]}}
      </view>
    </picker>
  </view>
</view>
  <view class="baocun">保存</view>
</view>
js文件 修改下拉菜单的内容
bindPickerChangefunction(e{
    // console.log('picker发送选择改变,携带值为', e.detail.value)
    var that = this;
    var id = e.currentTarget.id;
    var index = id+'index';
    this.setData({
      [index]: e.detail.value,
      font1:20,
      color1'#999'
    })
  },
回答关注问题邀请回答
收藏

1 个回答

  • Xavier
    Xavier
    2021-05-06
    // utils.wxs
    var concat = function (str1, str2{
      return str1 + str2;
    }
    module.exports = {
      concat: concat
    };
    
    // index.wxml
    <wxs src='../utils.wxs' module='util' />
    <block wx:for="{{arrayData}}" wx:for-item="item" wx:for-index="index" wx:key="index">
      <view data-id="{{util.concat(item.id,index)}}">就很优秀</view>
    </block>
    
    2021-05-06
    有用 2
    回复 5
    • Xavier
      Xavier
      2021-05-06
      By the way,也可以这样用
      2021-05-06
      3
      回复
    • Xavier
      Xavier
      2021-05-06
      似乎和问题南辕北辙了,有点儿没看懂问题😂
      2021-05-06
      回复
    • メ雾岛
      メ雾岛
      2021-05-06
      我就是想在 wxml页面上做活的变量  循环的时候 会取到index_item_id,不知道怎么把它和index拼接起来 变成 1index,2index这样的,index_item_id解析出来就是1,2,3这样的值
      2021-05-06
      回复
    • メ雾岛
      メ雾岛
      2021-05-06
      非常感谢,并没南辕北辙 确实按照你的写法 拼出了我想要的效果
      2021-05-06
      回复
    • Xavier
      Xavier
      2021-05-06回复メ雾岛
      那就是我上面的代码,写一个wxs,在wxs方法里面拼接字符串返回就好了,上面两个demo都是类似的
      2021-05-06
      1
      回复
登录 后发表内容