¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <a-date-picker |
| | | dropdownClassName="j-date-picker" |
| | | :disabled="disabled || readOnly" |
| | | :placeholder="placeholder" |
| | | @change="handleDateChange" |
| | | :value="momVal" |
| | | :showTime="showTime" |
| | | :format="dateFormat" |
| | | :getCalendarContainer="getCalendarContainer" |
| | | v-bind="$attrs"/> |
| | | </template> |
| | | <script> |
| | | import moment from 'moment' |
| | | export default { |
| | | name: 'JDate', |
| | | props: { |
| | | placeholder:{ |
| | | type: String, |
| | | default: '', |
| | | required: false |
| | | }, |
| | | value:{ |
| | | type: String, |
| | | required: false |
| | | }, |
| | | dateFormat:{ |
| | | type: String, |
| | | default: 'YYYY-MM-DD', |
| | | required: false |
| | | }, |
| | | //æ¤å±æ§å¯ä»¥è¢«åºå¼äº |
| | | triggerChange:{ |
| | | type: Boolean, |
| | | required: false, |
| | | default: false |
| | | }, |
| | | readOnly:{ |
| | | type: Boolean, |
| | | required: false, |
| | | default: false |
| | | }, |
| | | disabled:{ |
| | | type: Boolean, |
| | | required: false, |
| | | default: false |
| | | }, |
| | | showTime:{ |
| | | type: Object, |
| | | required: {}, |
| | | default: {} |
| | | }, |
| | | getCalendarContainer: { |
| | | type: Function, |
| | | default: (node) => node.parentNode |
| | | } |
| | | }, |
| | | data () { |
| | | let dateStr = this.value; |
| | | return { |
| | | decorator:"", |
| | | momVal:!dateStr?null:moment(dateStr,this.dateFormat) |
| | | } |
| | | }, |
| | | watch: { |
| | | value (val) { |
| | | if(!val){ |
| | | this.momVal = null |
| | | }else{ |
| | | this.momVal = moment(val,this.dateFormat) |
| | | } |
| | | } |
| | | }, |
| | | methods: { |
| | | moment, |
| | | handleDateChange(mom,dateStr){ |
| | | this.$emit('change', dateStr); |
| | | } |
| | | }, |
| | | //2.2æ°å¢ å¨ç»ä»¶å
å®ä¹ æå®ç¶ç»ä»¶è°ç¨æ¶åçä¼ å¼å±æ§åäºä»¶ç±»å è¿ä¸ªçé¼ |
| | | model: { |
| | | prop: 'value', |
| | | event: 'change' |
| | | } |
| | | } |
| | | </script> |