9
我需要在Date中聲明一個靜態的MinValue屬性。我的javascript代碼看起來像,在TypeScript中擴展現有對象(如Date)的屬性
Date.MinValue = new Date("someDate");
我發現有類似的問題,但答案但是,它只是添加一個函數而不是屬性。而且這些功能也沒有被定義爲靜態的。所以,這對我沒有幫助。
簡稱鏈接,
我需要在Date中聲明一個靜態的MinValue屬性。我的javascript代碼看起來像,在TypeScript中擴展現有對象(如Date)的屬性
Date.MinValue = new Date("someDate");
我發現有類似的問題,但答案但是,它只是添加一個函數而不是屬性。而且這些功能也沒有被定義爲靜態的。所以,這對我沒有幫助。
簡稱鏈接,
我不認爲你可以延長時間有一個額外的靜態屬性。可以按如下方式擴展其原型:
interface Date {
min: Date;
}
Date.prototype.min = new Date();
var x = new Date();
alert(x.min.toString());
做你真正想做的事情,你居然就必須做出改變,以lib.d.ts:
declare var Date: {
new(): Date;
new (value: number): Date;
new (value: string): Date;
new (year: number, month: number, date?: number, hours?: number, minutes?: number, seconds?: number, ms?: number): Date;
(): string;
prototype: Date;
parse(s: string): number;
UTC(year: number, month: number, date?: number, hours?: number, minutes?: number, seconds?: number, ms?: number): number;
now(): number;
min: Date;
}
並進行擴展在純JS中,除了TypeScript生成的JavaScript之外,還要加載它。
Date.min = new Date();
是否有任何其他方式來定義靜態屬性?而無需更改lib.d.ts. –
我會彈出一個答案在這裏:http://stackoverflow.com/questions/13955157/how-to-define-static-property-in-typescript-interface – Fenton