Стартовая страница › Форумы › Ошибки в работе › Mimic — Картинка фейсплейта — ошибка скрипта
- В этой теме 15 ответов, 4 участника, последнее обновление 2 месяца, 3 недели назад сделано
manjey73.
-
АвторЗаписи
-
25.04.2026 в 19:11 #42965
manjey73УчастникОбъясните, почему примитивный скрипт работает неверно.
Должен происходить простой перебор картинок при смене экспортируемой переменной от 0 до 4
0 — выключенное устройство, серая картинка
1 — 4 картинки зеленые, имитация движения.Даже в редакторе происходит лажа со сменой картинки при изменении переменной upr
28.04.2026 в 15:38 #43014
MikhailМодераторДобрый день!
Опубликуйте, пожалуйста, в эту тему скрипт и скриншоты его работы.28.04.2026 в 15:55 #43018
manjey73УчастникСсылка на fp в теме.
Фокус, замена картинки происходит на следующем шаге по значению предыдущего шага.Объяснять дольше, чем вы посмотрите скрипт и в отладке как-то проверите.
28.04.2026 в 15:57 #43019
manjey73УчастникСтатический скрин тут ничего не даст, нужно показывать в динамике или смотреть как-то через отладку что там происходит.
28.04.2026 в 17:49 #43020
manjey73УчастникЗаменил картинки на простые с номерами, чтобы было видно.
и везде добавил вывод в консоль, какая картинка должна выводиться.Косяк видно невооруженным глазом, даже в Редакторе.
При старте должна быть картинка 0 и при вводе значений 0-4 должны выводиться соответствующие картинки.переменная
uprв экспортируемых свойствах, можно привязать к каналу 105 Симулятора.Переделывал скрипт непосредственно в фейсплейте, та же песня.
29.04.2026 в 09:48 #43037Boriss
УчастникСкачал. Посмотрел. Все интересно…
Подозреваю, что это связано с тем, что не работает метод dataUpdated(args){}
Срабатывает domUpdated(args){}Мнемосхема открыта в редакторе и на ней фейсплейт. Меняем экспортируемое свойство upr и меняется args.component.properties.imageName Сразу. Что видно в консоли. Но сама картинка не обновляется. Что-бы обновилось, достаточно снять/поставить галку «Видимый» или любую другую. Т.е. надо заставить сработать domUpdated(args){}
Это в редакторе. А в представлении уже не заставить работать этот скрипт.Надо ждать…
29.04.2026 в 15:08 #43038
manjey73УчастникСкрипт то работает, но изменение картинки происходит через цикл, хотя в консоли видно, какая картинка должна вывестись и значение upr этому соответствует.
То есть если вводить цифры от 0 до 4 и не вводить другие, то будет видно.
29.04.2026 в 15:19 #43039
a80808УчастникА в скрите сразу отсеять ненужные цифры? Т.е. если 0 — 5 — рисуем картинку, другие рисуем (например) кукиш )))))
29.04.2026 в 16:24 #43043
MikhailМодераторСсылка на скриншоты не работает.
Скрипт тоже не был добавлен в тему обсуждения.29.04.2026 в 17:07 #43048
manjey73УчастникПо ссылке готовый faceplate.
С картинками, на которых цифры, чтобы видеть, какая картинка выводится. В скрипте в консоль выводится имя картинки, которое должна вывестись на экран.Ещё раз говорю, сам по себе скрипт и скрин в статике вам ничего не даст, и обсуждать данную проблему, делая скрины бесполезно.
Потому что тут нужна отладка, больше, чем тупая консоль.29.04.2026 в 17:11 #43049
manjey73Участник@a80808 ну, контроль потом ессно будет, речь о другом.
Скрипт выдает честно в консоль, после смены переменной ее значение, а картинку при этом меняет на следующем шаге изменения переменной, а не сразу, как ожидалось.29.04.2026 в 20:45 #43054Boriss
УчастникСейчас всё это работает через костыли( скрипт фейсплейта). А должно работать через метод dataUpdated(args){} в скрипте компонента. Надо ждать новый релиз.
29.04.2026 в 23:02 #43060
manjey73Участникскрипт в выложенном фейсплейте именно в компоненте, а не в фейсплейте.
Но пробовал переделывать и туда, поведение одинаковое или почти одинаковое, может даже хуже.let prop = args.component.parent.properties; const variable1 = prop.upr; // Триггерная переменная if (variable1 == 0) { args.component.properties.imageName = "screw_0.png"; console.log("Screw screw_0.png - prop.upr " + variable1);пример из скрипта. При изменении переменной в консоль выводится значение, например я поменял на 1, вывелось 1,, то есть условие выполнилось, но картинка поменяется на 1-ю, только если ввести следующее значение, например 2.
в общем что тут смотреть в консоли или где, я не понимаю. Я вижу только лажу исполнения. 🙂
30.04.2026 в 01:07 #43061Boriss
УчастникУ Вас скрипт есть в фейсплейте. Это и есть костыль. Уберите его и скрипт компонента вообще не будет работать. Это и есть проблема.
30.04.2026 в 09:27 #43062
manjey73УчастникСкрипт был совершенно для других целей.
Это он упростился, чтобы Михаил нашел проблему у себя 🤣 -
АвторЗаписи
- Для ответа в этой теме необходимо авторизоваться.