_storm__ 2022-03-08 16:05 采纳率: 0%
浏览 493
已结题

bpmn如何自定义一个类似于UserTask的节点

问题:在contextPad弹框里面点击修改类型 ,希望能添加一个自定义的类型节点,虽然看上去类型修改成功了,但是节点却没有添加到xml中,而且xml中删除掉了之前的节点

img

目前处理方法:
1.自定义了一个replaceMenuProvider重载node_module里面的方法
import ReplaceMenuProvider from 'bpmn-js/lib/features/popup-menu/ReplaceMenuProvider';
import { forEach } from 'min-dash';
export default function replaceMenuProvider() {
  const customObj = {
    label: 'User report task',
    actionName: 'replace-with-user-report-task',
    className: 'bpmn-icon-user-report-task',
    target: { type: 'custom:UserReportTask' },
  };
  ReplaceMenuProvider.prototype._createEntries = function (
    element,
    replaceOptions
  ) {
    replaceOptions.push(customObj);

    var menuEntries = [];
    var self = this;
    forEach(replaceOptions, function (definition) {
      var entry = self._createMenuEntry(definition, element);
      menuEntries.push(entry);
    });
    return menuEntries;
    // var menuEntries = _createReplaceEntries.apply(this, [
    //   element,
    //   replaceOptions,
    // ]);
    // menuEntries = menuEntries.concat(userReportTask);
    // return menuEntries;
  };
2.在customDescriptor.json中添加了类型描述
{
      "name": "UserReportTask",
      "superClass": ["Element"],
      "meta": {
        "allowedIn": ["custom:UserReportTask"]
      },
      "properties": [
        {
          "name": "body",
          "isBody": true,
          "type": "String"
        }
      ]
    },

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 3月16日
    • 修改了问题 3月8日
    • 修改了问题 3月8日
    • 创建了问题 3月8日

    悬赏问题

    • ¥15 unity从3D升级到urp管线,打包ab包后,材质全部变紫色
    • ¥50 comsol温度场仿真无法模拟微米级激光光斑
    • ¥15 上传图片时提交的存储类型
    • ¥15 VB.NET如何绘制倾斜的椭圆
    • ¥15 arbotix没有/cmd_vel话题
    • ¥15 odoo17的分包重新供应路线如何设置?可从销售订单中实时直接触发采购订单或相关单据
    • ¥15 用C语言怎么判断字符串的输入是否符合设定?
    • ¥15 通信专业本科生论文选这两个哪个方向好研究呀
    • ¥50 我在一个购物网站的排队系统排队,这个排队到号后重新定向到目标网站进行购物,但是有技术牛通过技术方法直接跳过排队系统进入目标网址购物,有没有什么软件或者脚本可以用
    • ¥15 ios可以实现ymodem-1k协议 1024字节传输吗?