index.wxml 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. <view class="item" wx:for="{{editFields}}" wx:key="index">
  2. <view class="name"> <text wx:if="{{item.required}}" style="color: red;">*</text> {{item.name}}:</view>
  3. <view class="content">
  4. <block wx:if="{{className=='ShopGoods'&&item.key=='specMap'}}">
  5. <view class="specMap">
  6. <view class="tip">不同规格价格不同可在规格属性里面填写价格,价格一样可不填写,编辑完之后需要保存</view>
  7. <view class="list">
  8. <view class="tags">
  9. <text class="title">属性名称:</text>
  10. <block wx:for="{{editMap[item.key].val.specList}}" wx:for-item="spec_item" wx:for-index="spec_index" wx:key="spec_item">
  11. <van-tag closeable="{{!item.disabled}}" type="primary" size="medium" color="{{color}}" text-color="{{text_color}}" data-key="{{item.key}}" data-spec_index="{{spec_index}}" bind:close="delKey_ShopGoods_specMap">{{spec_item}}</van-tag>
  12. </block>
  13. </view>
  14. <view class="text">
  15. <textarea disabled="{{item.disabled}}" confirm-type="点击添加" data-key="{{item.key}}" bindconfirm="addKey_ShopGoods_specMap" placeholder="请输入规格名称(可填多个)" auto-height></textarea>
  16. </view>
  17. </view>
  18. <view class="obj">
  19. <view class="title">属性对象:</view>
  20. <block wx:for="{{editMap[item.key].val.specList}}" wx:for-item="spec_item" wx:for-index="spec_index" wx:key="spec_item">
  21. <view class="obj_item">
  22. <view class="key">{{spec_item}}:</view>
  23. <view class="info">
  24. <block wx:for="{{editMap[item.key].val[spec_item]}}" wx:for-item="spec_map_item" wx:for-index="spec_map_index" wx:key="spec_map_item">
  25. <view class="info_item">
  26. <view>
  27. <text>属性值:</text>
  28. <input disabled="{{item.disabled}}" data-key="{{item.key}}" data-spec="{{spec_item}}" data-spec_map_index="{{spec_map_index}}" bindinput="setValue" value="{{spec_map_item.value}}" placeholder="输入属性值" type="text" />
  29. </view>
  30. <view>
  31. <text>价格:</text>
  32. <input disabled="{{item.disabled}}" data-key="{{item.key}}" data-spec="{{spec_item}}" data-spec_map_index="{{spec_map_index}}" bindinput="setPrice" value="{{spec_map_item.price}}" placeholder="输入价格" type="digit" />
  33. </view>
  34. <view>
  35. <text>会员价格:</text>
  36. <input disabled="{{item.disabled}}" data-key="{{item.key}}" data-spec="{{spec_item}}" data-spec_map_index="{{spec_map_index}}" bindinput="setVipPrice" value="{{spec_map_item.vipPrice}}" placeholder="输入会员价格" type="digit" />
  37. </view>
  38. <view wx:if="{{editMap[item.key].val[spec_item].length>1&&!item.disabled}}" class="del" data-key="{{item.key}}" data-spec="{{spec_item}}" data-spec_map_index="{{spec_map_index}}" bind:tap="delSpecMapItem">
  39. <van-icon name="cross" />
  40. </view>
  41. </view>
  42. </block>
  43. <view wx:if="{{!item.disabled}}" class="btn_specMap" style="border:1rpx solid {{color}};">
  44. <button data-key="{{item.key}}" data-spec="{{spec_item}}" bind:tap="addSpecMap" style="color: {{color}};">
  45. <van-icon name="plus" />添加
  46. </button>
  47. </view>
  48. </view>
  49. </view>
  50. </block>
  51. </view>
  52. </view>
  53. </block>
  54. <block wx:elif="{{item.type=='String'}}">
  55. <block wx:if="{{!item.view}}">
  56. <view class="text">
  57. <textarea value="{{editMap[item.key].val}}" data-key="{{item.key}}" bindblur="changeTextarea" placeholder="请输入{{item.name}}" auto-height disabled="{{item.disabled}}"></textarea>
  58. </view>
  59. </block>
  60. <block wx:elif="{{item.view=='edit-image'}}">
  61. <view class="image">
  62. <block wx:if="{{item.disabled}}">
  63. <image style="width:160rpx;height: 160rpx;" src="{{editMap[item.key].val[0].url}}" mode="" />
  64. </block>
  65. <block wx:else>
  66. <upload fileList="{{editMap[item.key].val}}" accept="all" data-key="{{item.key}}" bind:onChangeFile="changeFile" accept="image" maxCount="1" uploadURL="{{uploadURL}}" domain="{{domain}}" uptokenURL="{{uptokenURL}}"></upload>
  67. </block>
  68. </view>
  69. </block>
  70. <block wx:elif="{{item.view=='edit-select'}}">
  71. <van-radio-group disabled="{{item.disabled}}" value="{{editMap[item.key].val}}" class="radioGroup" data-key="{{item.key}}" bind:change="radioChange">
  72. <view wx:for="{{item.options}}" wx:for-item="option" wx:key="option" class="radio">
  73. <van-radio checked-color="{{color}}" name="{{option.value}}">{{option.label}}</van-radio>
  74. </view>
  75. </van-radio-group>
  76. </block>
  77. </block>
  78. <block wx:elif="{{item.type=='Number'}}">
  79. <van-field disabled="{{item.disabled}}" value="{{editMap[item.key].val}}" data-key="{{item.key}}" bindblur="changeNumber" type="digit" placeholder="请输入{{item.name}}" border="{{ false }}" />
  80. </block>
  81. <block wx:elif="{{item.type=='Boolean'}}">
  82. <van-switch disabled="{{item.disabled}}" active-color="{{color}}" checked="{{ editMap[item.key].val }}" data-key="{{item.key}}" bind:change="switchChange" size="40rpx" />
  83. </block>
  84. <block wx:elif="{{item.type=='Array'}}">
  85. <block wx:if="{{!item.view}}">
  86. <view class="tags">
  87. <block wx:for="{{editMap[item.key].val}}" wx:for-item="tag" wx:for-index="tag_index" wx:key="tag">
  88. <van-tag type="primary" closeable="{{!item.disabled}}" size="medium" data-key="{{item.key}}" data-index="{{tag_index}}" bind:close="delTextarea" color="{{color}}" text-color="{{text_color}}">{{tag}}</van-tag>
  89. </block>
  90. </view>
  91. <view class="text">
  92. <textarea disabled="{{item.disabled}}" confirm-type="点击添加" data-key="{{item.key}}" bindconfirm="addTextarea" placeholder="请输入{{item.name}}" auto-height></textarea>
  93. </view>
  94. </block>
  95. <block wx:elif="{{item.view=='edit-image'}}">
  96. <block wx:if="{{item.disabled}}">
  97. <image wx:for="{{editMap[item.key].val}}" wx:for-item="disabled_item" wx:for-index="disabled_index" wx:key="disabled_item" style="width:160rpx;height: 160rpx;margin-right: 10rpx;" src="{{disabled_item.url}}" mode="" />
  98. </block>
  99. <block wx:else>
  100. <upload fileList="{{editMap[item.key].val}}" data-key="{{item.key}}" bind:onChangeFile="changeFile_array" accept="image" maxCount="9" uploadURL="{{uploadURL}}" domain="{{domain}}" uptokenURL="{{uptokenURL}}"></upload>
  101. </block>
  102. </block>
  103. <block wx:elif="{{item.view=='pointer-array'}}">
  104. <view class="tags">
  105. <block wx:for="{{editMap[item.key].text}}" wx:for-item="tag" wx:for-index="tag_index" wx:key="tag">
  106. <van-tag type="primary" closeable="{{!item.disabled}}" size="medium" data-key="{{item.key}}" data-index="{{tag_index}}" bind:close="delPointer" color="{{color}}" text-color="{{text_color}}">{{tag}}</van-tag>
  107. </block>
  108. </view>
  109. <view class="btn_Pointer" wx:if="{{!item.disabled}}">
  110. <button data-index="{{index}}" data-key="{{item.key}}" bind:tap="openPointer" style="background: {{color}};color: {{text_color}};">
  111. <van-icon name="plus" />添加
  112. </button>
  113. </view>
  114. </block>
  115. </block>
  116. <block wx:elif="{{item.type=='Pointer'}}">
  117. <view class="text" data-index="{{index}}" data-key="{{item.key}}" bind:tap="openPointer">
  118. <text class="title">{{editMap[item.key].text||'请选择'}}</text>
  119. <van-icon name="arrow" />
  120. </view>
  121. </block>
  122. </view>
  123. </view>
  124. <block wx:if="{{is_btn}}">
  125. <view class="footer">
  126. <button class="btn" style="background: {{color}};color: {{text_color}};" bindtap="submit">提交</button>
  127. </view>
  128. </block>
  129. <!-- 指针查询 -->
  130. <van-popup show="{{ isShowPointer }}" position="bottom" bind:close="closePointer" round>
  131. <view class="popup">
  132. <view class="title">选择内容</view>
  133. <van-search bind:change="valChange" placeholder="请输入搜索关键词" />
  134. <scroll-view class="itemBox" bindscrolltolower="getPointerItem" scroll-y>
  135. <block wx:for="{{pointerList}}" wx:for-item="pointer_item" wx:key="pointer_item">
  136. <view class="item" data-index="{{index}}" bind:tap="{{editFields[fieldIndex].type=='Array'?'checkPointer_Array':'checkPointer'}}" style="color:{{pointer_item.dev_router_check?color:'black'}};">
  137. {{pointer_item.storeName||pointer_item.name||pointer_item.title||pointer_item.orderNum||pointer_item.mobile}}
  138. <van-icon name="success" wx:if="{{pointer_item.dev_router_check}}" color="{{color}}" />
  139. </view>
  140. </block>
  141. </scroll-view>
  142. </view>
  143. </van-popup>