在我的项目中,我需要将datepicker翻译成乌克兰地区。每个月的标签都很好。它仍然保留在现场。我如何在左上角按钮内翻译标签(你选择年份)?
export class CustomDateAdapter extends MomentDateAdapter {
public override getDayOfWeekNames(style: 'long' | 'short' | 'narrow') {
return ['Нд', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб'];
}
public override getMonthNames(style: 'long' | 'short' | 'narrow') {
return [
'Січ',
'Лют',
'Бер',
'Квіт',
'Трав',
'Черв',
'Лип',
'Серп',
'Вер',
'Жовт',
'Лист',
'Груд',
];
}
public override getFirstDayOfWeek() {
return 1;
}
}
export const MATERIAL_DATEPICKER_FORMATS = {
parse: {
dateInput: 'DD/MM/YYYY',
},
display: {
dateInput: 'DD/MM/YYYY',
monthYearLabel: 'MMM YYYY',
dateA11yLabel: 'DD/MM/YYYY',
monthYearA11yLabel: 'MM YYYY',
},
};
For now only solution I have is to remove MMM from monthYearLabel: 'MMM YYYY'.
发布于 2022-11-16 14:36:01
我认为缺少的部分之一是覆盖getDateNames
函数,在MomentDateAdapter
中使用提供的区域设置解析该函数。而且,由于您没有提供地区设置,所以它回到了默认状态,IIRC是en-US。
尽管如此,为什么不简单地提供乌克兰的地点,让时刻使用它的标准命名?如下所示:
{provide: MAT_DATE_LOCALE, useValue: 'uk'},
您可以在模块级别或组件级别提供它,并且它将为日期应用区域设置。工作的stackblitz (使用日期格式) 这里。
https://stackoverflow.com/questions/74461257
复制相似问题