Пишу свой первый плагин для Sketch и пытаюсь получить ширину выбранного слоя.
export default function(context) {
const selectedLayers = context.selection;
const selectedCount = selectedLayers.length;
if (selectedCount === 0) {
context.document.showMessage('Please select a circle shape layer');
} else {
selectedLayers.forEach(function (layer) {
log(layer.frame.width);
})
}
}
Журнал показывает:
<MOUndefined: 0x6040000048f0>
документация указывает, что фрейм слоя является Rectangle и что прямоугольник имеет свойства x, y, ширины и высоты. Так что я не понимаю, почему я становлюсь неопределенным.
Я попробовал log(layer.frame) и получил:
<MOMethod: 0x60400263b420 : target=0x7f9dbf5b8ee0<MSShapeGroup: 0x7f9dbf5b8ee0> Oval (691540C6-7B18-4752-9BA6-A3A298754C9A), selector=frame>
Так что я нацеливаюсь правильно.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


попробуйте с
layer.frame().width()