我正在尝试在课堂上使用时刻时区。 这是我的打字。
"moment": "github:DefinitelyTyped/DefinitelyTyped/moment/moment.d.ts#a1575b96ec38e916750629839d2110cb96210f89",
"moment-timezone": "github:DefinitelyTyped/DefinitelyTyped/moment-timezone/moment-timezone.d.ts#f8a90040348e83926f44e690b209769c4f88b961"
我的导入:
import * as moment from 'moment';
import * as tz from 'moment-timezone';
我的用法:
var jun = moment("2014-06-01T12:00:00Z");
jun.tz('America/Los_Angeles').format('ha z');
我的错误:
Property 'tz' does not exist on type 'Moment'.
答案 0 :(得分:9)
使用Typescript @types
个包并通过 listener.support(methods::POST, handle_post1);//if this is the first msg I receive
listener.support(methods::POST, handle_post2);//if this is the second msg I receive
导入。您可以使用所有import * as moment from 'moment-timezone';
方法和成员变量moment
导出它们。
我有一个使用SystemJS的完整示例 How to use moment-timezone in Angular2 via SystemJs
答案 1 :(得分:8)
请尝试以下代码:
import * as moment from 'moment-timezone';
export class Page1 {
public setdate = moment(); // today date
constructor(){
this.setdate.tz("Asia/Singapore").format('YYYY-MM-DD HH:mm:ss');
console.log(this.setdate.tz("Asia/Singapore").format('YYYY-MM-DD HH:mm:ss'));
}
}
答案 2 :(得分:7)
我遇到了同样的问题并以这种方式解决了这个问题:
打字(ambientDependencies):
"moment": "registry:dt/moment#2.8.0+20160316155526",
"moment-timezone": "github:DefinitelyTyped/DefinitelyTyped/moment-timezone/moment-timezone.d.ts#f8a90040348e83926f44e690b209769c4f88b961"
导入:
import * as moment from 'moment';
import 'moment-timezone'
用法:
moment("2014-06-01T12:00:00Z")
.tz('America/Los_Angeles')
.format('ha z');
所以,基本上我正在对当前导入的对象执行.tz()函数(事实上它并不存在),但是时刻时区的导入扩展了它的附加功能。
我还使用systemjs-plugin-json在moment-timezone库中正确加载时区定义的json对象。
我希望这会有所帮助。
答案 3 :(得分:7)
我将在2020年进行更新。
$ npm install moment-timezone @types/moment-timezone
import moment from 'moment-timezone';
...
// do this - outside of any class is fine
moment.tz.add('America/Los_Angeles|PST PDT|80 70|01010101010|1Lzm0 1zb0 Op0 1zb0 Rd0 1zb0 Op0 1zb0 Op0 1zb0');
...
someMethod() {
const m = moment(the_date);
...
const mFormatted = m.tz('America/Los_Angeles').format('YYYY-MM-DDTHH:mm:ssZZ');
}
时区定义可以在https://github.com/moment/moment-timezone/blob/develop/data/packed/latest.json上找到。我用它来定义自己的内容,而不是全部阅读。