index.vue 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <template>
  2. <view class="jnpf-time-pickeer">
  3. <JnpfDatePicker v-model="value" :scene="scene" :inputType="inputType" :placeholder="placeholder"
  4. :disabled="disabled" :type="type" :startTime="startTime" :endTime="endTime" :format="format"
  5. :selectType='selectType' @change="change" />
  6. </view>
  7. </template>
  8. <script>
  9. export default {
  10. name: 'jnpf-time-pickeer',
  11. props: {
  12. scene: {
  13. type: String,
  14. default: 'form'
  15. },
  16. inputType: {
  17. type: String,
  18. default: 'select'
  19. },
  20. modelValue: {
  21. type: [String, Number],
  22. default: ''
  23. },
  24. placeholder: {
  25. type: String,
  26. default: '请选择'
  27. },
  28. disabled: {
  29. type: Boolean,
  30. default: false
  31. },
  32. type: {
  33. type: String,
  34. default: 'time'
  35. },
  36. startTime: {
  37. type: [String, Number],
  38. default: 0
  39. },
  40. selectType: {
  41. type: String,
  42. default: ''
  43. },
  44. endTime: {
  45. type: [String, Number],
  46. default: 0
  47. },
  48. format: {
  49. type: String,
  50. default: 'yyyy-MM-dd HH:mm:ss'
  51. },
  52. },
  53. data() {
  54. return {
  55. value: ""
  56. }
  57. },
  58. watch: {
  59. modelValue: {
  60. handler(val) {
  61. this.value = val
  62. },
  63. immediate: true
  64. },
  65. value(val) {
  66. this.$emit('update:modelValue', val)
  67. }
  68. },
  69. methods: {
  70. change(value, type) {
  71. this.$emit('change', value, type)
  72. }
  73. }
  74. }
  75. </script>
  76. <style lang="scss" scoped>
  77. .jnpf-time-pickeer {
  78. width: 100%;
  79. }
  80. </style>