储能智慧云小程序
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

image-viewer.wxml 2.0KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <import src="../common/template/icon.wxml" />
  2. <wxs src="../common/utils.wxs" module="_" />
  3. <view
  4. wx:if="{{visible}}"
  5. id="{{classPrefix}}"
  6. class="{{classPrefix}} class {{prefix}}-class"
  7. style="{{_._style([style, customStyle, '--td-image-viewer-top: ' + maskTop + 'px'])}}"
  8. aria-modal="{{true}}"
  9. aria-role="dialog"
  10. aria-label="图片查看器"
  11. >
  12. <view
  13. class="{{classPrefix}}__mask"
  14. data-source="overlay"
  15. bind:tap="onClose"
  16. style="{{ 'background-color: ' + backgroundColor }}"
  17. aria-role="button"
  18. aria-label="关闭"
  19. />
  20. <block wx:if="{{images && images.length}}">
  21. <view class="{{classPrefix}}__content">
  22. <swiper
  23. class="swiper"
  24. style="{{swiperStyle[currentSwiperIndex].style}}"
  25. autoplay="{{false}}"
  26. current="{{currentSwiperIndex}}"
  27. bindchange="onSwiperChange"
  28. bindtap="onClose"
  29. tabindex="0"
  30. >
  31. <swiper-item wx:for="{{images}}" wx:key="index" class="{{classPrefix}}__preview-image">
  32. <t-image
  33. t-class="t-image--external"
  34. style="{{imagesStyle[index].style || ''}}"
  35. mode="aspectFit"
  36. lazy
  37. src="{{item}}"
  38. data-index="{{index}}"
  39. class="{{classPrefix}}__image"
  40. bindload="onImageLoadSuccess"
  41. ></t-image>
  42. </swiper-item>
  43. </swiper>
  44. </view>
  45. <view class="{{classPrefix}}__nav">
  46. <view class="{{classPrefix}}__nav-close" catch:tap="onClose" aria-role="button" aria-label="关闭">
  47. <slot name="close-btn" />
  48. <template wx:if="{{_closeBtn}}" is="icon" data="{{ ..._closeBtn }}" />
  49. </view>
  50. <view wx:if="{{showIndex}}" class="{{classPrefix}}__nav-index">
  51. {{currentSwiperIndex + 1}}/{{images.length}}
  52. </view>
  53. <view class="{{classPrefix}}__nav-delete" bind:tap="onDelete" aria-role="button" aria-label="删除">
  54. <slot name="delete-btn" />
  55. <template is="icon" data="{{ ..._deleteBtn }}" />
  56. </view>
  57. </view>
  58. </block>
  59. </view>