Date.vue 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <template>
  2. <date-picker
  3. :readonly="readonly"
  4. :date="starttime"
  5. :option="option"
  6. style="padding: 0px; border: none;"
  7. />
  8. </template>
  9. <script>
  10. var VueDatepicker = require('../../vue-datepicker/src/vue-datepicker.vue').default;
  11. var VueDatepickerOption0 = require('./vue-datepicker-setting.js').default;
  12. export default {
  13. // eslint-disable-next-line
  14. name: 'Date',
  15. components: {
  16. 'date-picker': VueDatepicker,
  17. },
  18. props: {
  19. 'dateValue':{
  20. type: String,
  21. default: null,
  22. },
  23. 'readonly':{
  24. type: Boolean,
  25. default: null,
  26. },
  27. },
  28. emits: ['on-value-change', 'input'],
  29. data: function () {
  30. var vueDatepickerOption = VueDatepickerOption0();
  31. vueDatepickerOption.option.type = 'day';
  32. vueDatepickerOption.option.format = 'YYYY-MM-DD';
  33. vueDatepickerOption.timeoption.type = 'min';
  34. vueDatepickerOption.timeoption.format = 'YYYY-MM-DD';
  35. vueDatepickerOption.multiOption.type = 'multi-day';
  36. vueDatepickerOption.multiOption.format = 'YYYY-MM-DD';
  37. return {
  38. starttime: {
  39. time: this.dateValue,
  40. },
  41. endtime: {
  42. time: '',
  43. },
  44. testTime: '',
  45. multiTime: '',
  46. option: vueDatepickerOption.option,
  47. timeoption: vueDatepickerOption.timeoption,
  48. multiOption: vueDatepickerOption.multiOption,
  49. limit: vueDatepickerOption.limit,
  50. };
  51. },
  52. watch: {
  53. // 'value': function(val){
  54. // // 监听外部对props属性value的变更,并同步到组件内
  55. // starttime.time = val;
  56. // },
  57. 'starttime.time': function (val) {
  58. // 组件内对starttime.time变更后向外部发送事件通知
  59. this.$emit('on-value-change', val);
  60. this.$emit('input', val);
  61. console.log('name has been changed:', val);
  62. },
  63. dateValue: function (val) {
  64. this.starttime.time = val;
  65. },
  66. },
  67. };
  68. </script>