Скажем, у вас есть:
let path = new Path([new pt(1, 1), new pt(2, -5)]);
path.strokeColor = new Color(0, 0, 0);
Затем вы клонируете свой путь:
path = path.clone();
Вы получаете:
TS2740: Тип "Элемент" отсутствуют следующие свойства из типа «Путь» ...
Хорошо, хорошо. Итак, вы делаете:
path = path.clone() as Path;
И вы получаете:
TS2749: «Путь» относится к значению, но используется здесь как тип.
Странно ... Так что если я go с определением Path
:
Path: typeof Path
и, как ни странно, с определением paper.Path
:
class Path extends PathItem {...}
Что здесь происходит? Почему у бумаги js есть такой извилистый граф типа? Я беспокоюсь, что выполнение as paper.Path
вызовет побочные эффекты для PaperScope
, связанного с paper
.