index.vue 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. <template>
  2. <view class="date-selector">
  3. <view class="select-date-wrapper">
  4. <view class="select-date" :class="{ active: activeDate == 'startDate' }" @tap="onTapStartDate">
  5. <view class="select-date-value" v-if="startDate">{{ startDate }}</view>
  6. <view class="select-date-placeholder" v-else>请选择时间</view>
  7. </view>
  8. <view style="margin: 0 16px">至</view>
  9. <view class="select-date" :class="{ active: activeDate == 'endDate' }" @tap="onTapEndDate">
  10. <view class="select-date-value" v-if="endDate">{{ endDate }}</view>
  11. <view class="select-date-placeholder" v-else>请选择时间</view>
  12. </view>
  13. </view>
  14. <DateTimePicker
  15. v-if="showStartDatePicker"
  16. @onChange="onChangeStartDate"
  17. :defaultDate="startDate"
  18. :minDate="minDate || ''"
  19. :maxDate="endDate || maxDate || ''"
  20. :mode="mode"
  21. />
  22. <DateTimePicker
  23. v-if="showEndDatePicker"
  24. @onChange="onChangeEndDate"
  25. :defaultDate="endDate"
  26. :minDate="startDate || minDate || ''"
  27. :maxDate="maxDate || ''"
  28. :mode="mode"
  29. />
  30. <view class="btn-group" v-if="showStartDatePicker || showEndDatePicker">
  31. <view class="btn-cancel" @tap="onCancel">取消</view>
  32. <view class="btn-confirm" @tap="onConfirm">确定</view>
  33. </view>
  34. </view>
  35. </template>
  36. <script src="./index.js"></script>
  37. <style lang="css" scoped src="./index.css"></style>