我在有用的日期扩展中发现了要点:https://gist.github.com/weslleih/b6e7628416a052963349494747aed659
当我尝试使用这些函数时,出现运行时错误消息:
TypeError:x.isToday不是函数
如果我以这种方式使用扩展名,则将扩展名导入文件中会起作用:
导入'src / date.extensions';
这似乎很老套。因为下一个人怎么知道为了使日期扩展方法起作用,需要导入此内容。
有人有更好的解决方案吗?
(或者这可能是错误的方法。我习惯于C#经常进行扩展方法)
答案 0 :(得分:1)
在Typescript和Javascript中实际上不建议使用方法扩展,我的建议是使导出的函数带有一个日期并返回一个布尔值,如下所示:
const isToday = (date: Date): boolean => {
const now = new Date();
const inputDay = date.getDay();
const inputMonth = date.getMonth();
const inputYear = date.getFullYear();
const nowDay = now.getDay();
const nowMonth = now.getMonth();
const nowYear = now.getFullYear();
return (
nowDay === inputDay && nowMonth === inputMonth && nowYear === inputYear
);
};