Wewnętrzne bloki to bloki dołączone do danych wejściowych wartości i instrukcji. Poszczególne generatory kodu blokowego muszą obsługiwać połączenie swojego wewnętrznego kodu bloki, aby kod został wstawiony we właściwym miejscu.
import {javascriptGenerator, Order} from 'blockly/javascript';
javascriptGenerator.forBlock['my_custom_block'] = function(block, generator) {
// Generate innner block code.
const statement = generator.statementToCode(block, 'MY_STATEMENT_INPUT');
const value = generator.valueToCode(block, 'MY_VALUE_INPUT', Order.ATOMIC);
// Concatenate the string.
const code = `some code ${statement} ${value} some more code`;
// Return the code.
return code;
}
Dane wejściowe instrukcji
Kod wewnętrznych bloków dołączonych do danych wejściowych instrukcji można wygenerować za pomocą
statementToCode
Powoduje to wywołanie funkcji
generator kodu blokowego bloku instrukcji i uchwyty
dodając wcięcie.
const statement = generator.statementToCode(block, 'MY_STATEMENT_INPUT');
W przypadku bezpośredniego połączenia wewnętrznego wystarczy wywołać statementToCode
do danych wejściowych.
Dane wejściowe
Kod wewnętrznych bloków przyłączonych do danych wejściowych wartości można wygenerować za pomocą funkcji
valueTocode
Powoduje to wywołanie funkcji
generator kodu blokowego bloku wartości i uchwyty
dodawanie nawiasów wokół wewnętrznych bloków w razie potrzeby.
Zapoznaj się z dokumentacją na temat nawiasów, aby dowiedzieć się, jak aby sterować nawiasami.
const value = generator.valueToCode(block, 'MY_VALUE_INPUT', Order.ATOMIC);
Połącz kod
Po otrzymaniu ciągu kodu bloku wewnętrznego możesz go połączyć w we właściwym miejscu z ciągiem kodu.
const code = `some code ${statement} ${value} some more code`;
Kod zwrotu
Różne typy bloków wymagają, aby ciąg kodu był zwracany w różnych , zapoznaj się więc z informacjami o poszczególnych stronach: