index.axml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <template name="DropdownSelect">
  2. <view a:if="{{listData}}" class="a-dropdown-wrapper {{active ? 'expand' : ''}}">
  3. <view id="a-dropdown-nav" class="a-dropdown-nav">
  4. <block a:for={{listData}}>
  5. <view
  6. class="a-dropdown-nav-item {{ active && selectedNav ===index ? 'active' : ''}}"
  7. hover-class="a-dropdown-nav-item-hover"
  8. onTap="_onNavItemTap"
  9. data-index={{index}}
  10. >
  11. <text>{{item.nav}}</text>
  12. <view class="triangle"></view>
  13. </view>
  14. </block>
  15. </view>
  16. <scroll-view scroll-y="{{true}}" class="a-dropdown-contents">
  17. <block a:for={{listData}} a:for-item="list" a:for-index="parentIndex">
  18. <view hidden="{{selectedNav !== parentIndex}}">
  19. <view class="a-dropdown-list-items {{active? 'show' : ''}}">
  20. <block a:for={{list.data}} >
  21. <view
  22. class="a-dropdown-list-item {{index !== (list.data.length - 1) ? '': 'last'}} {{index === list.selectedItem ? 'selected': ''}}"
  23. hover-class="a-dropdown-list-item-hover"
  24. onTap="{{list.onListItemTap || '_onListItemTap'}}"
  25. catchTap="{{list.onListItemTap || '_catchListItemTap'}}"
  26. data-index={{index}}
  27. data-parentIndex={{parentIndex}}
  28. data-title={{item.title}}
  29. >
  30. <view class="a-dropdown-list-item-line {{item.textMode ? 'a-dropdown-list-item-line-' + item.textMode : ''}}">
  31. <image a:if={{item.thumb}} class="a-dropdown-list-item-thumb" src="{{item.thumb}}" mode="scaleToFill" />
  32. <text class="a-dropdown-list-item-content">{{item.title}}</text>
  33. <view a:if={{item.extra}} class="a-dropdown-list-item-extra" >{{item.extra}}</view>
  34. <view class="a-dropdown-list-item-check"/>
  35. <view class="a-dropdown-list-item-bottom" />
  36. </view>
  37. </view>
  38. </block>
  39. </view>
  40. </view>
  41. </block>
  42. </scroll-view>
  43. <view class="a-dropdown-placeholder"></view>
  44. <view class="a-dropdown-bg" onTap="_catchBgTap"></view>
  45. </view>
  46. </template>