我正在使用TypeScript和一个名为'moment-transform'的moment.js插件。
时刻变换动态地向时刻对象添加transform
函数。用法是这样的:
import moment = require('moment');
require('moment-transform'); // simply adds transform function
moment().transform('YYYY-MM-+07 00:00:00.000').toDate();
但是,使用TypeScript构建时,我收到此错误:
error TS2339: Property 'transform' does not exist on type 'Moment'.
我如何正确处理动态添加的功能?
[edit] (moment() as any).transform('YYYY-MM-+07 00:00:00.000').toDate();
似乎有效。这真的是要走的路吗?有没有可能全局指定?
答案 0 :(得分:1)
您可以使用以下方法扩展moment
定义:
在您的自定义时刻宣布moment
的任何扩展名。时刻。
import * as moment from "moment";
declare module "moment"
{
interface Moment
{
transform(a: string): Moment;
}
}
并在您的“我的网站”中使用它
:import * as moment from 'moment';
moment().transform('qw').toDate();
有关此事的更多信息:Module Augmentation