枚举:类型的参数'&quort; hh:mm&quot&quot'不能分配给类型的参数。
我做出了一个接受两个参数数据和格式的函数。我正在尝试为称为“格式”的参数制作枚举(格式化)。但是,这是一个错误:
类型'“ HH:MM”'的参数不能分配给类型的参数 “格式化”
如何为第二个参数编写正确的枚举? Here is Playground on TypeScript Click
Code :
const basicTime: any = {
year: 'numeric',
month: 'short',
day: '2-digit',
hour: 'numeric',
minute: 'numeric',
};
const hoursMinutes: any = {
hour: 'numeric',
minute: 'numeric',
};
enum FormatOptions {
HoursMinutes = 'HH:MM',
MonthDayYear = 'MM/DD/YYYY',
};
const dateFormat = (date: Date, format: FormatOptions) => {
if (format === 'HH:MM') {
return new Date(date).toLocaleString('en-US', hoursMinutes);
}
return new Date(date).toLocaleString('en-US', basicTime);
};
dateFormat(new Date, 'HH:MM');
I made a function that accepts two arguments data and format. I'm trying to make ENUM(FormatOptions) for argument called "format". However, here is an error:
Argument of type '"HH:MM"' is not assignable to parameter of type
'FormatOptions'
How to write the correct ENUM for 2nd argument?
Here is Playground on TypeScript Click
Code:
const basicTime: any = {
year: 'numeric',
month: 'short',
day: '2-digit',
hour: 'numeric',
minute: 'numeric',
};
const hoursMinutes: any = {
hour: 'numeric',
minute: 'numeric',
};
enum FormatOptions {
HoursMinutes = 'HH:MM',
MonthDayYear = 'MM/DD/YYYY',
};
const dateFormat = (date: Date, format: FormatOptions) => {
if (format === 'HH:MM') {
return new Date(date).toLocaleString('en-US', hoursMinutes);
}
return new Date(date).toLocaleString('en-US', basicTime);
};
dateFormat(new Date, 'HH:MM');
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
而不是
enum
您可以使用Union
:Instead of
enum
you can useunion
: