Blocchi interni

I blocchi interni sono i blocchi collegati agli input di valore e istruzioni. I singoli generatori di codici a blocchi devono gestire la concatenazione dei loro in modo che il codice venga aggiunto nella posizione corretta.

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;
}

Input delle istruzioni

Il codice dei blocchi interni collegati agli input delle istruzioni può essere generato statementToCode. In questo modo viene chiamato generatore di codice a blocchi del blocco di istruzioni e handle far rientrare il codice.

const statement = generator.statementToCode(block, 'MY_STATEMENT_INPUT');

Devi chiamare solo statementToCode per il blocco interno collegato direttamente a un input di istruzione.

Input valore

Il codice dei blocchi interni collegati agli input di valori può essere generato utilizzando valueTocode. In questo modo viene chiamato generatore di codice a blocchi del blocco di valori e handle l'aggiunta di parentesi prima dei blocchi interni codice quando necessario.

Consulta la documentazione relativa alle parentesi per ulteriori informazioni su come per controllare le parentesi.

const value = generator.valueToCode(block, 'MY_VALUE_INPUT', Order.ATOMIC);

Concatena codice

Dopo aver ottenuto la stringa di codice del blocco interno, puoi concatenarla nella posizione corretta con la stringa di codice.

const code = `some code ${statement} ${value} some more code`;

Codice di ritorno

Tipi di blocchi diversi richiedono che la stringa di codice venga restituita in di Google, quindi controlla le singole pagine per ulteriori informazioni: