Ответ 1
Похоже, у вас есть разумный план. Вот мои наблюдения!
Лучше всего убедиться, что вы TypeScript зависят от вашего JavaScript, а не наоборот, где это возможно. Это связано с тем, что с помощью инструментов Visual Studio очень легко реорганизовать TypeScript, но он не будет реорганизовывать JavaScript, который вызывает ваш TypeScript.
Вам нужно будет написать файлы определений для частей вашего JavaScript, которые вам нужно вызвать из TypeScript. Вам нужно будет сбалансировать стоимость написания определения со стоимостью простого преобразования JavaScript в TypeScript.
Если вы вызываете только одну функцию, просто напишите определение для этой функции - не записывайте определение, пока оно вам не понадобится. Это позволит снизить стоимость вызова старого кода.
Вы также можете временно использовать тип any
, чтобы уйти с вызовом чего-либо на свой код JavaScript. Когда вы конвертируете файл в TypeScript, вы получите лучшую проверку типов. Это точка решения "зависит от". Вместо того, чтобы тратить время на написание определений, вы могли бы сэкономить время за счет проверки типа.
Например...
declare var MyExistingClass: any;
Теперь вы можете позвонить...
var example = new MyExistingClass.Anything();
example.anythingYouLike();
Вы должны решить в качестве команды, является ли это приемлемым или если вы хотите написать определения:
declare class MyExistingClass {
anythingYouLike(): void;
}
Надеюсь, это поможет.