javascript - datefns 格式未完全格式化
问题描述
我正在使用 react 和 datefns。
我有以下代码
import { enUS, ja } from 'date-fns/locale';
import { format, isValid, parseISO } from 'date-fns';
export const getDateLocal = (locale?: string) => {
switch (locale) {
case 'ja':
return ja;
case 'en':
default:
return enUS;
}
};
export const localizedDateFormatter = (
date: Date | number | string,
dateFormat = 'MMM dd',
locale = 'en'
): string => {
const dateIsIso = typeof date === 'string' ? isValid(parseISO(date)) : false;
if (!date || (!dateIsIso && !isValid(date))) {
return '-';
}
return format(new Date(date), dateFormat, { locale: getDateLocal(locale) });
};
我这样称呼这个函数
localizedDateFormatter(hoverFrom, 'MMM dd, yyyy', i18n.language) // can be ja or en
问题是,日期没有像我想要的那样转换。
ja: 12月 15, 2020
en: Dec 15, 2020
虽然它应该是
ja: 2020年1月13日 (or at least 1月13日, 2020年)
en: Dec 15, 2020
为什么这样 ?
解决方案
推荐阅读
- excel - 如何通过excel宏避免覆盖并将两个文件保留在文件夹中
- c# - C# 按 IP 地址列对 DataTable 进行排序
- swift - Pressing backspace in UITextfield not deleting
- api - 如何在 golang 中调试特定的 api?
- reactjs - React router redirect based on api response
- git - Dealing with merge conflicts in Git Work Flow
- c# - 获取最新的子记录 - EF Core
- python - 字典返回空值;但它仍然存储在列表中
- jquery - Why is "content not found" when loading magnific popup on page load?
- ruby - 对 rb-inotify 的更新是否只是破坏了 Ruby 1.x 上的指南针?