0

最初の 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>

ドキュメントには、レイヤーのフレームは aRectangleであり、Rectangle には x、y、幅、および高さのプロパティがあると記載されています。だから私はなぜ私が未定義になっているのか分かりません。

私は試しlog(layer.frame)てみましたが、得られます:

<MOMethod: 0x60400263b420 : target=0x7f9dbf5b8ee0<MSShapeGroup: 0x7f9dbf5b8ee0> Oval (691540C6-7B18-4752-9BA6-A3A298754C9A), selector=frame>

だからちゃんと狙ってる。

4

1 に答える 1

1

試してみてください

layer.frame().width()

于 2018-07-08T18:06:48.417 に答える