Wejścia wbudowane a zewnętrzne

Dane wejściowe mogą być renderowane w treści lub zewnętrznie. Określa, czy złącza wejść wartości są renderowane wewnątrz bloku (w linii) czy na zewnętrznej krawędzi (zewnętrznej), a także czy wejścia są renderowane w tym samym czy w różnych wierszach.

Warianty bloków „count with x from value to value do
statement” (zliczaj od wartości do wartości, wykonując instrukcję) w formie wbudowanej i zewnętrznej. W wersji wbudowanej blok ma 2 wiersze: w górnym wierszu znajduje się tekst „count with x from value to value”, a w dolnym – „do statement”.
Wartości wejściowe wyglądają jak elementy układanki wycięte z wewnętrznej części górnego wiersza.
W zewnętrznej odmianie blok ma 4 wiersze: „count with x”, „from
value”, „to value” i „do statement”. Wejścia wartości znajdują się na końcach drugiego i trzeciego rzędu i wyglądają jak żeńskie złącza puzzli.

Definicja bloku może zawierać opcjonalną wartość logiczną określającą, czy dane wejściowe są wstawione w tekście.

JSON

{
  // ...,
  "inputsInline": true
}

JavaScript

init: function() {
  // ...
  this.setInputsInline(true);
}

Gdy ta wartość logiczna jest ustawiona na true (dane wejściowe w tekście):

  • Złącza do wprowadzania wartości są renderowane w bloku.
  • Dane wejściowe instrukcji są renderowane w osobnym wierszu.
  • Dane wejściowe typu „dummy”, „end-of-row” i „value” są renderowane w tym samym wierszu, z wyjątkiem danych wejściowych następujących po instrukcji lub danych wejściowych typu „end-of-row”, które są renderowane w nowym wierszu.

Gdy jest ustawiona na false (wejścia zewnętrzne):

  • Złącza do wprowadzania wartości są renderowane na zewnętrznej krawędzi bloku.
  • Wszystkie dane wejściowe są renderowane w osobnych wierszach, z wyjątkiem danych wejściowych końca wiersza, które następują po danych wejściowych zastępczych i są renderowane w tym samym wierszu co dane wejściowe zastępcze.

Jeśli masz problem z wyobrażeniem sobie tego, utwórz bloki w narzędziach dla deweloperów Blockly i wybierz różne ustawienia w menu inputs (automatic, external, inline).

Jeśli ta wartość logiczna nie jest zdefiniowana, Blockly użyje heurystyki, aby odgadnąć, który tryb jest najlepszy. Jeśli Blockly dokona prawidłowego wyboru, lepiej pozostawić to pole niezdefiniowane, ponieważ różne tłumaczenia mogą automatycznie mieć różne tryby. Przykład "set %1 to %2" (wejścia zewnętrzne) i "put %2 in %1" (wejścia wbudowane) znajdziesz w sekcji Kolejność tokenów interpolacji.

Używaj elementów wejściowych w tekście, gdy blok prawdopodobnie będzie zawierać małe elementy wejściowe, takie jak liczby. Użytkownik może włączyć lub wyłączyć tę opcję w menu kontekstowym.