Mimic — Фейсплейт в фейсплейте

Просмотр 15 сообщений - с 16 по 30 (из 62 всего)
  • Автор
    Записи
  • #42865
    Imya
    Участник

    Перепроверил на 6.4.6, к сожалению не работает. Проект

    — Пользовательские скрипты выполняются в режиме редактирования

    Это то что обсуждалось в этой теме? Если да, то тоже не работает.
    Насчет примеров с гитхаба, если я правильно понял, то про исполнение скриптов дочерних компонентов говорится в контексте панелей? Фейсплейтов это не касалось?

    #42867
    Mikhail
    Модератор

    Посмотрю ориентировочно на следующей неделе. Напишу в эту тему.

    #42869
    manjey73
    Участник

    Вроде писал про простейший скрипт вывода в консоль ид компонента.
    Скрипт должен быть ессно внутри компонента, а не фейсплейта.

    з.ы. и откуда в вас такая уверенность, что компонент будет таки первым? 🙂

    • Ответ изменён 4 месяца назад пользователем manjey73.
    #42871
    manjey73
    Участник

    1. Возможность полноценного скрипта внутри компонента, независимо куда он ставится, на мнемосхему или внутрь фейсплейта. Так как я засматриваюсь на ExtraMarkup из-за возможности использовать в нем svg, то на своих примерах (из головы)
    Разруливание id и ссылок на id внутри компонента, управление скриптом всем этим внутри компонента.
    И тут загвоздка, в компоненте нельзя создать экспортируемые данные как в фейсплейте.
    Ну ладно, нет такой возможности сделать из меню, хотя бы возможность сделать из скрипта ???????????

    2. внутрь фейсплейта может быть вставлено более ОДНОГО компонента с одинаковым скриптом соответственно. Ну то есть один и тот же компонент. Необходимо чтобы для этого не пришлось каждый раз редактировать скрипты компонента, типа Раз, Два, Три и всем что-то допиливать.

    #42874
    Mikhail
    Модератор

    id компонента доступен из скрипта. Выведите в консоль переменную arg и среди дочерних объектов найдите id.

    Скрипт компонента может менять свойства компонента или записывать пользовательские данные в объект компонента. Компонент не экспортирует свойств.

    #42875
    manjey73
    Участник

    1. О каком дочернем объекте речь, если скрипт внутри компонента?
    Который в свою очередь вставлен в фейсплейт. Скрипта в фейсплейт нет вообще от слова совсем.

    2. Может как-то неправильно объясняю.
    Есть у компонента свойство «visible» и другие по умолчанию. Когда мы ставим компонент в фейсплейт и даём ему имя, условно «mycomp» то из скрипта фейсплейта (или не скрипта) мы можем использовать путь mycomp.visible

    Как сделать так, чтобы скриптом В КОМПОНЕНТЕ создать свойство «myProp» и потом в фейсплейта точно так же сделать связь на mycomp.myProp
    И вообще, возможно ли это?
    Или пользуйте то, что есть и не конючьте? 🙂

    #42876
    Mikhail
    Модератор

    Тема называется «Фейсплейт в фейсплейте».
    Если вопрос не про фейсплейт в фейсплейте, напишите, пожалуйста, в соответствующую тему.

    #42877
    manjey73
    Участник

    а в чем разница внутри фейсплейта фейсплейт или последняя миля компонент?

    Суть проблемы как раз общая — какие либо скрипты не работают внутри последней мили.

    а тему, где я показывал простейший скрипт вывода в консоль вы успешно прикрыли.

    • Ответ изменён 4 месяца назад пользователем manjey73.
    #42879
    Boriss
    Участник

    Сейчас вспомнил что с самого начала не работали скрипты у компонентов фейсплейта, т.е. я могу из главного окна найти дочерний компонент и его отредактировать, но не могу через скрипт этого компонента отредактировать его-же самого.

    Мне удалось запустить скрипт компонента, который расположен внутри фейсплейта.
    Методом научного тыка, как всегда… все это очень странно, но работает.
    Что-бы заработал скрипт компонента, надо создать скрипт фейсплейта. Если нет скрипта фейсплейта, то скрипты в компонентах не работают.
    Скрипт фейсплейта:

    class extends ComponentScript {
            domCreated(args) {}
    	domUpdated(args) {}
    	dataUpdated(args) {}
    }

    В скрипте компонента работают методы domCreated(args) и domUpdated(args). Метод dataUpdated(args) не работает. Вот такие «чудеса».

    #42880
    manjey73
    Участник

    О, спасибо, попробую протестировать своё

    Работает 🙂 появилась надпись в консоли, попробую свой скрипт подпихнуть для проверки

    • Ответ изменён 4 месяца назад пользователем manjey73.
    #42882
    manjey73
    Участник

    Хотя тут же появился вопрос — какой ID у компонента?
    Как его узнать?

    Как при установке двух одинаковых компонентов понять кто из них кто?

    #42883
    Boriss
    Участник

    Не работает уникальный id. Создам новую тему…

    #42887
    Mikhail
    Модератор

    Что-бы заработал скрипт компонента, надо создать скрипт фейсплейта.

    Вот это полезная информация, спасибо, проверю.

    #42891
    Boriss
    Участник

    Как при установке двух одинаковых компонентов понять кто из них кто?

    Заполнить поле «Наименование». Тогда к адресу ссылки автоматом добавляется имя компонента, например так: Наименование: compName1 ссылка: compName1.text
    Именно так его можно найти в окне выбора свойств, когда делается экспорт свойств.
    Наименования у компонентов должны быть уникальны.
    За 15мин создал фейсплейт с двумя компонентами «текст» с привязкой к разным каналам. Работает. Но и сразу обнаружился косяк с привязкой к выходному каналу. Или так задумано? Номер выходного канала приходится указывать непосредственно в свойствах компонента, а не в разделе «разное», там этого просто нет или я еще не разобрался, как экспортировать выходной канал.

    #42892
    manjey73
    Участник

    там можно через номер устройства и код тега, или через номер объекта.
    Но имхо, все это криво, сильные привязки. Нужны символьные переменные или типа…

    чтобы в компонент передать номер устройства или объекта, а не прописывать его в компоненте.
    Пока сам не разобрался еще.

    В общем компонент не должен быть связан жестко с именем тега или Устройство.Код
    Вернее ему надо передать номер или того или другого, а уже дальше связь.

    з.ы. Ну уберите вы уже номера из устройства или объекта, но ведь это же должно быть просто, хош номер пиши, хош код (устройства или тега) сразу…

Просмотр 15 сообщений - с 16 по 30 (из 62 всего)
  • Тема «Mimic — Фейсплейт в фейсплейте» закрыта для новых ответов.