Параметризация исходного свойства в объекте go.Picture - PullRequest
0 голосов
/ 25 июня 2018

Я использую gojs для перетаскивания изображений из палитры на холст, я создал объект Picture, и теперь мне нужно параметризовать его свойство source, чтобы указать путь к изображению, на котором пользователь щелкнул в данный момент и хочет перетаскивать его

Вот как выглядит мой код:

    myDiagram.nodeTemplate =
    go.GraphObject.make(go.Node, "Spot",
        go.GraphObject.make(go.Picture, {
                scale: 0.3,
                // source1: currentlyGrabbedDevicePath
                // source2: '../img/devices/hub1.png'
            },
            // new go.Binding('source', 'cgdp')
        ),
        /*more code below..*/
  • source2 очевидно работает
  • source1 нет (я получаю пустой контейнер безширина / высота. Масштабирование игнорируется - что мне нужно, я не могу установить statis ширина / высота для всех изображений)
  • переплет то же самое (пустой контейнер без ширины / высоты)

1 Ответ

0 голосов
/ 10 июля 2018

В вашем коде для установки Picture.source на выражение currentlyGrabbedDevicePath, держу пари, что оно было оценено как undefined в то время, когда вы определили шаблон.Это то же самое, что совсем не устанавливать Picture.source , поэтому все экземпляры этих Узлов будут иметь Изображения, для которых не установлен источник.

Использование Binding кажется разумным.Вы удостоверились, что объект данных узла имеет свойство cgdp, установленное в URL, который вы хотите?Если вы устанавливаете его динамически, используете ли вы Model.setDataProperty , чтобы происходили уведомления и чтобы оценивались привязки и чтобы сохранялась история отмен / повторов?

...