<template>
  <div class="yearPicker">
    <a-date-picker
      format="YYYY"
      mode="year"
      :value="momVal"
      :open="open"
      @openChange="openChange"
      @panelChange="panelChange"
    />
  </div>
</template>
<script>
import moment from 'moment'
export default {
  name: 'JYear',

    props: {
    value: {
      type: String,
      required: false,
    }  
    },
  data() {
    let dateStr = this.value;
    return{
      momVal:!dateStr?null:moment(dateStr,"YYYY"),
      open : false
    }
  },

  methods: {
    openChange(status) {
      if (status) {
        this.open = true
      } else {
        this.open = false
      }
    },
    panelChange(val) {
      this.momVal = val.format('YYYY')
      this.$emit('change', this.momVal);
      this.open = false
    },
  },
      model: {
      prop: 'value',
      event: 'change'
    }
}
</script>

总的来说不是很难,踩了一些框架封装的坑

Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐