Blok nilai adalah blok dengan koneksi output. Ini bertindak seperti nilai (alias ekspresi) dalam bahasa berbasis teks.
Sama seperti semua blok di Blockly, blok nilai dapat diubah menjadi {i>string<i} kode dengan mendefinisikan generator kode blok.
import {javascriptGenerator, Order} from 'blockly/javascript';
javascriptGenerator.forBlock['custom_block'] = function(block, generator) {
// Collect argument strings.
const fieldValue = block.getFieldValue('MY_FIELD');
const innerCode = generator.valueToCode(block, 'MY_VALUE_INPUT', Order.ATOMIC);
// Return code.
return ['my code string', Order.NONE];
}
Mengumpulkan string argumen
Semua pembuat kode blok memerlukan mengumpulkan nilai kolom dan mengumpulkan kode blok dalam.
// Collect field values.
const fieldValue = block.getFieldValue('MY_FIELD');
// Collect inner block code strings.
const innerCode = generator.valueToCode(block, 'MY_VALUE_INPUT', Order.ATOMIC);
Jika Anda mereferensikan kode blok bagian dalam beberapa kali, Anda harus menambahkan cache argumen ke blok Anda.
Kode status
Jenis nilai yang ditampilkan dari generator blok kode nilai adalah array tempat array pertama adalah string kode dan nilai kedua adalah prioritas.
return ['my code string', Order.NONE];
Prioritas mengontrol kapan tanda kurung ditambahkan di sekitar string kode blok. Lihat dokumentasi tanda kurung untuk informasi selengkapnya tentang bagaimana mengontrol kapan tanda kurung ditambahkan.