¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <text>{{dateShow}}</text> |
| | | </template> |
| | | |
| | | <script> |
| | | import {friendlyDate} from './date-format.js' |
| | | /** |
| | | * Dateformat æ¥ææ ¼å¼å |
| | | * @description æ¥ææ ¼å¼åç»ä»¶ |
| | | * @tutorial https://ext.dcloud.net.cn/plugin?id=3279 |
| | | * @property {Object|String|Number} date æ¥æå¯¹è±¡/æ¥æå符串/æ¶é´æ³ |
| | | * @property {String} locale æ ¼å¼å使ç¨çè¯è¨ |
| | | * @value zh 䏿 |
| | | * @value en è±æ |
| | | * @property {Array} threshold åºç¨ä¸åç±»åæ ¼å¼åçéå¼ |
| | | * @property {String} format è¾åºæ¥æå符串æ¶çæ ¼å¼ |
| | | */ |
| | | export default { |
| | | name: 'uniDateformat', |
| | | props: { |
| | | date: { |
| | | type: [Object, String, Number], |
| | | default () { |
| | | return '-' |
| | | } |
| | | }, |
| | | locale: { |
| | | type: String, |
| | | default: 'zh', |
| | | }, |
| | | threshold: { |
| | | type: Array, |
| | | default () { |
| | | return [0, 0] |
| | | } |
| | | }, |
| | | format: { |
| | | type: String, |
| | | default: 'yyyy/MM/dd hh:mm:ss' |
| | | }, |
| | | // refreshRate使ç¨ä¸å½å¯è½å¯¼è´æ§è½é®é¢ï¼è°¨æ
ä½¿ç¨ |
| | | refreshRate: { |
| | | type: [Number, String], |
| | | default: 0 |
| | | } |
| | | }, |
| | | data() { |
| | | return { |
| | | refreshMark: 0 |
| | | } |
| | | }, |
| | | computed: { |
| | | dateShow() { |
| | | this.refreshMark |
| | | return friendlyDate(this.date, { |
| | | locale: this.locale, |
| | | threshold: this.threshold, |
| | | format: this.format |
| | | }) |
| | | } |
| | | }, |
| | | watch: { |
| | | refreshRate: { |
| | | handler() { |
| | | this.setAutoRefresh() |
| | | }, |
| | | immediate: true |
| | | } |
| | | }, |
| | | methods: { |
| | | refresh() { |
| | | this.refreshMark++ |
| | | }, |
| | | setAutoRefresh() { |
| | | clearInterval(this.refreshInterval) |
| | | if (this.refreshRate) { |
| | | this.refreshInterval = setInterval(() => { |
| | | this.refresh() |
| | | }, parseInt(this.refreshRate)) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style> |
| | | |
| | | </style> |