使用 Sketch API 获取所选图层的宽度
Get width of selected layer with Sketch API
正在编写我的第一个 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>
documentation 指出层的框架是 Rectangle
并且矩形具有 x、y、宽度和高度属性。所以我不明白为什么我会变得不确定。
我尝试了 log(layer.frame)
,我得到了:
<MOMethod: 0x60400263b420 : target=0x7f9dbf5b8ee0<MSShapeGroup: 0x7f9dbf5b8ee0> Oval (691540C6-7B18-4752-9BA6-A3A298754C9A), selector=frame>
所以我的目标是正确的。
试试
layer.frame().width()
正在编写我的第一个 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>
documentation 指出层的框架是 Rectangle
并且矩形具有 x、y、宽度和高度属性。所以我不明白为什么我会变得不确定。
我尝试了 log(layer.frame)
,我得到了:
<MOMethod: 0x60400263b420 : target=0x7f9dbf5b8ee0<MSShapeGroup: 0x7f9dbf5b8ee0> Oval (691540C6-7B18-4752-9BA6-A3A298754C9A), selector=frame>
所以我的目标是正确的。
试试
layer.frame().width()