Я нахожусь в процессе преобразования большого флеш-приложения в холст с помощью Typescript, и у меня возникают проблемы с использованием классов для расширения объектов библиотеки.
Используя библиотеку классов для кнопок,
class BtnClass {
constructor(el: createjs.MovieClip) {
el.addEventListener("mouseover", MouseOverHandler.bind(el));
}
}
Если бы у меня был объект, размещенный на сцене в Animate CC, я мог бы использовать этот класс, добавляя действия в кадр для экспорта, и все работало бы хорошо.
Btn1 = new BtnClass(this.buttons.btn1_mc);
Но я не могу заставить это работать для динамически размещенных объектов библиотеки.
Я получаю сообщение об ошибке при попытке расширить свой объект с помощью этого класса в библиотечном объекте, который не размещен на этапе Animate CC.
var libraryObject = new lib.btn2_mc();
var dynamicButton = createjs.extend(new BtnClass(libraryObject), libraryObject);
currentElement.addChild(dynamicButton);
Ошибка: Аргумент типа «BtnClass» нельзя присвоить параметру типа «() => любой». Тип «BtnClass» не соответствует подписи «(): any».
Любые идеи приветствуются.