Vuetify datepicker только год максимальная дата не вызывает мутацию состояния vuex - PullRequest
0 голосов
/ 22 мая 2019

Я написал небольшой пример, в котором я пытаюсь обновить состояние vuex для года, вызвав соответствующую мутацию vuex, выбрав год с помощью средства выбора даты vuetify (только год). Это работает довольно хорошо, за исключением любопытства, что ТОЛЬКО! максимальная дата средства выбора даты не запускает мутацию для изменения состояния. Я надеюсь, что у кого-то есть подсказка, почему это так и что я могу сделать, нужно упомянуть, что календарь открывается нажатием на значок календаря, вот пример:

https://codesandbox.io/embed/vuetifydialogexample-9l619?fontsize=14

1 Ответ

0 голосов
/ 23 мая 2019

Если вы посмотрите на исходный код , он будет сравнивать строку

export default function isDateAllowed (date: string, min: string, max: string, allowedFn: AllowedDateFunction | undefined) {
  return (!allowedFn || allowedFn(date)) &&
    (!min || date >= min) &&
    (!max || date <= max)

Ваш формат даты 2020-NaN-NaN, поэтому ваше сравнение:

"2020-NaN-NaN" <= "2020" // false, that's why you can't select 2020
"2019-NaN-NaN" <= "2020" // true, you can select 2019

Один грязный способ исправить это изменить максимальное значение на 2020-NaN-NaN

            <v-date-picker
                reactive
                show-current
                ref="picker" 
                v-model="date"  
                min="2018-NaN-NaN"
                max="2020-NaN-NaN"
                no-title
                >
            </v-date-picker>
...