#typescript #bootstrap-datetimepicker
#typescript #bootstrap-datetimepicker
Вопрос:
Я пытаюсь использовать плагин Bootstrap Datetimepicker в моем коде TypeScript. Я загрузил определения .d.ts для плагина, но в настоящее время ни один из них не включает метод Datetimepicker.destroy
. Однако он присутствует в плагине, поэтому я хотел бы использовать его с безопасностью типов.
Обычно я бы сделал простой интерфейс (расширение) на моем корневом уровне следующим образом:
inteface Datetimepicker {
destroy():void;
}
Но в этом случае это не работает, потому что Datetimepicker
интерфейс определен в BootstrapV3DatetimePicker
модуле в файле d.ts, поэтому такого рода расширение не работает. Я также пробовал этот способ:
module BootstrapV3DatetimePicker {
inteface Datetimepicker {
destroy():void;
}
}
Но, похоже, это тоже не работает, метод destroy по-прежнему не распознается Visual Studio.
Как добавить новые элементы к существующему интерфейсу, если он определен в модуле во внешнем файле d.ts?
Ответ №1:
Попробуйте :
declare module BootstrapV3DatetimePicker {
export inteface Datetimepicker {
destroy():void;
}
}
Обратите внимание на экспорт и объявите
Комментарии:
1. Спасибо, мне нужно было только ключевое слово export, и оно отлично работает и без объявления. Есть ли у declare предполагаемая роль в вашем ответе?
2. вам это нужно, у функции нет тела… без
declare
генерируется JavaScript