В настоящее время я конвертирую свой проект из ES5 в ES6, но у меня возникла проблема с MomentJS (version 2.18.1
). Проблема в том, что у меня есть несколько переменных, которые являются объектами Moment, но я не могу вызывать moment() для них.
Пример:
import * as moment from "moment";
export class DateThingy {
constructor(private moment) { //What type does this have??
}
public getDate(): moment.Moment {
return this.moment();
}
}
1) Если я устанавливаю тип private moment
на private moment: moment
, WebStorm жалуется: "не могу найти имя" момент "."
2) Если я установил тип на private moment: moment.Moment
, объект изменился, и я больше не могу вызывать this.moment()
(теперь это объект, и у него нет вызова функции). Webstorm говорит мне: "не может вызвать выражение, тип которого не имеет сигнатуры вызова. Тип" Момент "не имеет пригодных для подписи вызовов".
3) Я больше не могу использовать MomentStatic, так как он не экспортируется. Если я наберу private moment: moment.MomentStatic
, WebStorm выдаст мне: "Пространство имён" момент "не имеет экспортированного члена MomentStatic" "
Итак, какую печатать я должен использовать для этого примера?