Я начал свой проект с CreateJS в TypeScript 1.3 около 4 месяцев назад. Проблема возникла после выпуска TypeScript 1.4 в январе. Конечно, я должен был скачать новые библиотеки DefinitlyTyped (от NuGet). Мой проект был сломан - я бы согласился, если не факт, что он не работает даже в новых проектах. *.d.ts
файлов, неспособных скомпилировать проект. Это происходит в версиях ECMAScript 5
и ECMAScript 6
.CreateJS и TypeScript 1.4
Я обнаружил, что определение SoundJS содержит самую большую ошибку, которая не может загрузить проект, и я избавился от него. Но даже так, я получаю следующие ошибки:
GameData.mapStage.canvas.width
Error 1 Property 'width' does not exist on type 'Object | HTMLCanvasElement'.
И я должен написать что-то подобное, чтобы использовать эту собственность:
(<HTMLCanvasElement>(GameData.mapStage.canvas)).width
Resharper видит <HTMLCanvasElement>
, как избыточную, потому что canvas
всегда HTMLCanvasElement
ведьма верно , но TypeScript нуждается в кастинге.
Решение также easeljs.d.ts
модификация от:
canvas: HTMLCanvasElement | Object;
в
canvas: HTMLCanvasElement;
Единственный способ в настоящее время работать с машинопись 1.4 и CreateJS не загружая createjs.TypeScript.DefinitelyTyped
пакет, и загружать отдельно easeljs
, tweenjs
и preloadjs
. No SoundsJS
support ...
Я ждал 2 месяца, надеясь, что придут новые TypeDefinitions, но этого не произошло. Разве CreateJS не поддерживает новые версии TypeScript?
Может быть, @gskinner знает что-то об этой проблеме? – Bruniasty