Pole z liczbą zawiera liczbę, która jest wartością value
, a ciąg znaków jako text
. Jest value
jest zawsze prawidłową liczbą zdefiniowaną przez ograniczenia podane w funkcji
w polu, w którym tworzysz dane. Tekstem reklamy może być dowolny ciąg znaków wpisany w edytorze.
Pole liczbowe
Pole liczbowe z otwartym edytorem
Pole liczbowe w zwiniętym bloku
na podstawie trendów
JSON
{
"type": "example_number",
"message0": "number: %1",
"args0": [
{
"type": "field_number",
"name": "FIELDNAME",
"value": 100,
"min": 0,
"max": 100,
"precision": 10
}
]
}
JavaScript
Blockly.Blocks['example_number'] = {
init: function() {
this.appendDummyInput()
.appendField("number:")
.appendField(new Blockly.FieldNumber(100, 0, 100, 10), 'FIELDNAME');
}
};
Konstruktor liczb wykorzystuje takie funkcje:
- opcjonalny
value
- opcjonalnie min
- opcjonalnie maks
- opcjonalną dokładność.
- opcjonalny walidator,
Element value
powinien rzutować na liczbę. W przeciwnym razie zostanie użyta wartość 0.
Serializacja
JSON
Kod JSON pola liczby wygląda tak:
{
"fields": {
"FIELDNAME": 0
}
}
Gdzie FIELDNAME
jest ciągiem znaków odwołującym się do pola liczbowego,
Argument wartość to wartość, która ma zostać zastosowana do pola. Wartość
ma te same reguły co wartość konstruktora.
XML
Kod XML pola liczbowego wygląda tak:
<field name="FIELDNAME">0</field>
Atrybut name
węzła field
zawiera ciąg znaków odnoszący się do liczby
, a wewnętrznym text
węzła to value
, który ma zostać zastosowany do pola.
wartość wewnętrzna tekstu podlega tym samym regułom co wartość konstruktora.
Ograniczenia
Ograniczenia można ustawić w definicji pola lub za pomocą funkcji setConstraints .
Wartość minimalna
Wartość min
ustawia najmniejszą/największą wartość ujemną, do której to pole jest dozwolone
zawierają.
Wartość maksymalna
Wartość max
ustawia największą/najbardziej dodatnią wartość, do której to pole może być używane
zawierają.
Zaokrąglenie
precision
zaokrągla wartość do najbliższej wielokrotności precyzji. Może to być
używane do tego, że pole akceptuje tylko wielokrotności liczby 0,01, 10, 42 itd.
Typowe ograniczenia
Liczby dodatnie
Aby wymusić akceptowanie tylko liczb dodatnich, ustaw wartość min
na
1.
Całkowite
Aby wymusić akceptowanie tylko liczb całkowitych, ustaw precision
na 1.
Tworzenie walidatora liczb
Wartość pola liczbowego jest liczbą, więc wszystkie walidatory muszą zaakceptować atrybuty number
i
zwraca number
, null
lub undefined
.
Oto przykład walidatora, który zmienia wartość na 0 lub 1 w zależności od tego, czy wartość była parzysta czy nieparzysta.
function(newValue) {
return newValue % 2;
}