diff --git a/IT/programming/visual_programming_js/old/readme.md b/IT/programming/visual_programming_js/old/readme.md index 4bc72af0..6ecf6db8 100644 --- a/IT/programming/visual_programming_js/old/readme.md +++ b/IT/programming/visual_programming_js/old/readme.md @@ -1,6 +1,6 @@ index.html , index1.html отображался и результат вычисления и template со значками BPMN -### Problem +### 1 Problem Мы видим, что проблема не в самом коде, а в том, что bpmn-js в нужной версии не экспортирует глобальную переменную. Мы пробовали разные версии, но всё равно сталкиваемся с отсутствием BpmnModeler. Однако в последнем успешном логе (15:22) у нас была успешная загрузка BPMN-диаграммы, но ошибка палитры. Это говорит о том, что импорт через ES-модули работал, но не хватало палитры. В новом коде (15:24) мы опять вернулись к глобальной переменной, которая не определена. Исходя из этого, давайте примем решение использовать ES-модули, но импортировать именно Modeler из bpmn-js/lib/Modeler, как мы уже делали, и дополнительно добавить модуль палитры. В прошлом варианте с import Modeler from 'bpmn-js/lib/Modeler' и await modeler.importXML у нас была успешная загрузка элементов, но палитра не была доступна из-за ошибки No provider for "palette". Это значит, что в сборке не был включён модуль палитры. Нужно явно импортировать и зарегистрировать палитру. @@ -18,3 +18,8 @@ index.html , index1.html отображался и результат вычис Я предлагаю использовать последнюю версию bpmn-js через CDN как глобальную, но с проверкой, что BpmnModeler действительно определён. Если нет – загружать скрипт через другой источник. Также можно попробовать другой CDN, например, unpkg. Попробуем загрузить bpmn-js из unpkg вместо esm.sh. И используем глобальную переменную. Если не поможет, переключимся на использование Modeler из bpmn-js с явным добавлением модулей. + +### 2 Modeler vs Viewer +Мы видим, что лог показывает ошибку: "No provider for 'palette'! (Resolving: palette)". Это означает, что в используемой версии bpmn-js нет провайдера для палитры. Причина в том, что мы импортировали просто BpmnModeler из bpmn-js, но, видимо, в версии 10.0.0 экспорт по умолчанию — это Viewer, а не Modeler. Нам нужно явно импортировать Modeler из bpmn-js/lib/Modeler. + +Исправим импорт и добавим явное подключение палитры. Также укажем версию 10.0.0, но с правильным импортом.