| | |
| | | /** |
| | | * CFilterSelect - 筛选项目,选择日期 |
| | | * CFilterDateRange - 筛选项目,选择日期 |
| | | * @author Tevin |
| | | */ |
| | | |
| | | <template> |
| | | <view |
| | | class="c-filter-select" |
| | | :class="'type-'+type" |
| | | class="c-filter-select c-filter-date" |
| | | :class="'type-'+place" |
| | | > |
| | | <view |
| | | class="label" |
| | | v-if="type==='item'" |
| | | v-if="place==='item'" |
| | | >{{label}}</view> |
| | | <CDateRangeAction |
| | | :value="value" |
| | | :onChange="evt=>handleChange(evt)" |
| | | :onChange="evt => handleChange(evt)" |
| | | > |
| | | <view class="content"> |
| | | <view |
| | | class="label" |
| | | v-if="type==='bar'" |
| | | > |
| | | {{label}}: |
| | | </view> |
| | | <view :class="selected ? 'filled':'empty'"> |
| | | {{selected ? value : ('请选择' + label)}} |
| | | v-if="place==='bar'" |
| | | >{{label}}</view> |
| | | <view :class="selected?'filled':'empty'"> |
| | | {{selected ? value.replace(',', ' , ') : ('请选择' + label)}} |
| | | </view> |
| | | <view class="at-icon at-icon-chevron-down" /> |
| | | </view> |
| | |
| | | <script> |
| | | import Taro from '@tarojs/taro'; |
| | | import { CDateRangeAction } from '@components/forms/datePicker'; |
| | | import './cFilterDateRange.scss'; |
| | | |
| | | export default { |
| | | name: 'CFilterSelect', |
| | | name: 'CFilterDateRange', |
| | | components: { |
| | | CDateRangeAction, |
| | | }, |
| | | props: { |
| | | type: String, |
| | | // 位置类型,bar、item |
| | | place: String, |
| | | // 项名称 |
| | | label: String, |
| | | value: null, |
| | | // 项键名 |
| | | name: String, |
| | | // 项值 |
| | | value: String, |
| | | // 变化回调 |
| | | onChange: Function, |
| | | }, |
| | | data() { |
| | |
| | | }, |
| | | methods: { |
| | | handleChange(dateRange) { |
| | | this.onChange(dateRange); |
| | | this.onChange({ |
| | | place: this.place, |
| | | name: this.name, |
| | | value: dateRange, |
| | | }); |
| | | }, |
| | | }, |
| | | }; |