16 808
правок
Fizikdaos (обсуждение | вклад) (Новая страница: «=== Обновление до версии 2.2 === С версии 2.2 стали более строго проверяться типы устанавлива…») |
(→Обновление до версии 2.2: Переписал абзац) |
||
Строка 2: | Строка 2: | ||
С версии 2.2 стали более строго проверяться типы устанавливаемых значений для контролов: | С версии 2.2 стали более строго проверяться типы устанавливаемых значений для контролов: | ||
* Раньше для установки признака включено/выключено для '''switch''' и состояний '''pushbutton''' можно было присваивать значение 1 или 0 — теперь только '''true/false'''. | |||
* Раньше контролу типа '''text''' можно было присвоить число и оно автоматически конвертировалось текст — теперь только текст. Если нужно записать число, то используйте <code>(val).toString()</code> для конвертации. | |||
* Раньше для передачи в контролы типа '''value''' и его подтипов (Temperature, Power, Voltage и прочие) значений допускалось указывать значения в кавычках — теперь нужно указывать только число. | |||
Если в коде есть ошибка, то выполнение скрипта останавливается и в логи добавляются записи вида: | |||
<pre> | <pre> | ||
ERROR: control wb-mr3_30/K1 SetValue() error: can't convert control value '1' (type float64) to datatype 'switch' | ERROR: control wb-mr3_30/K1 SetValue() error: can't convert control value '1' (type float64) to datatype 'switch' | ||
Строка 14: | Строка 13: | ||
</pre> | </pre> | ||
Раньше писали так: | |||
<syntaxhighlight lang="ecmascript"> | <syntaxhighlight lang="ecmascript"> | ||
dev["wb-mr3_30"]["K1"] = 1 // включение | dev["wb-mr3_30"]["K1"] = 1 // включение | ||
dev["status"]["someStatus"] = -1.47 // float | dev["status"]["someStatus"] = -1.47 // float | ||
dev["temperature"]["value"] = "36.6" // text | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Теперь только так: | |||
<syntaxhighlight lang="ecmascript"> | <syntaxhighlight lang="ecmascript"> | ||
dev["wb-mr3_30"]["K1"] = true // включение | dev["wb-mr3_30"]["K1"] = true // включение | ||
dev["status"]["someStatus"] = (-1.47).toString() // text | dev["status"]["someStatus"] = (-1.47).toString() // text | ||
dev["temperature"]["value"] = 36.6 // float | |||
</syntaxhighlight> | </syntaxhighlight> | ||