npm 包 bpmn-js-properties-panel-activiti-support 使用教程

在前端开发中,我们常常需要使用 BPMN 语言来描述各种业务流程,同时也需要通过活动、用户任务和网关等元素来描述流程中的各个阶段和执行步骤。npm 包 bpmn-js-properties-panel-activiti-support 就是在此背景下产生的一款基于 bpmn-js 的 npm 包,它提供了一些支持 Activiti 自定义扩展属性的面板,使我们能够在 BPMN 编辑器中方便地添加和编辑各种扩展属性。在本篇文章中,我们将详细介绍如何使用该 npm 包进行前端开发。

使用 npm 安装 bpmn-js-properties-panel-activiti-support

在开始使用 bpmn-js-properties-panel-activiti-support 前,我们需要保证已经安装好了 node.js 和 npm,如果没有安装,请先安装好。

使用 npm 安装 bpmn-js-properties-panel-activiti-support 只需要执行以下命令即可:

--- ------- -----------------------------------------

安装完成后,我们可以在 package.json 文件中看到已经添加了该包的依赖信息:

-
  --------------- -
    -------------------------------------------- --------
  -
-

在前端项目中使用 bpmn-js-properties-panel-activiti-support

安装完成后,我们需要在前端项目中引用该包并进行相关配置。

导入 bpmn-js-properties-panel-activiti-support

在需要使用 bpmn-js-properties-panel-activiti-support 的文件中,我们需要先引入该包:

------ ------------------------------------ ---- --------------------------------------------

-- -- ------- ----
------ ----------- ---- ----------------------

-- ------- ---------------- -- ------------- - ------------------------

扩展 bpmn-js 的面板配置

接着,我们需要在 bpmn-js 的配置中添加该包的配置信息,以便在编辑器中显示该扩展面板,具体需要配置的信息有如下几个部分:

1. module.imports

在 module.imports 中需要引入 bpmn-js-properties-panel 和 bpmn-js-properties-panel-activiti-support,同时也需要在该变量定义中添加 bpmnjs.properties-panel 和 bpmnjs.properties-panel-activiti-support 的别名,以便在后面的配置中使用。

--- --------------- - -
    -----
--

--- ----------------- - -
    ------------------------------------
--

--- ----------- - --- -------------
    -----
    ------------------
    ----------------- -
        -----
    --
    -- ----
    ---------------- -
        ------- -----------------------
        -- ----
        ------------------ -
            -
                -- ------------------------ ---
                ------- -------------------
                -- ------------------------ ---
                ----- --------------------------------
                -- ---------------------- ------------------------ --------
                ------------------- -----------------
            --
            -
                -- ----------------------------------------- ---
                ------- ------------------------------------
                -- ----------------------------------------- ---
                ----- -------------------------------------------------
                ------------------- -----------------
            -
        --
        -- ---------
        ------------------- -
            -----
        --
        -----
    --
    -----
-

2. propertiesProvider

在 propertiesProvider 中定义每个元素的扩展属性面板信息,包括每个元素的 ID、elementName、provider 和 descriptor 等属性,设置这些属性后,我们就可以在编辑面板中显示出扩展属性面板,默认情况下不显示。

--- --------------- - -
    -----
--

--- ----------------- - -
    ------------------------------------
--

--- ----------- - --- -------------
    -----
    ------------------
    ----------------- -
        -----
    --
    -----
    ---------------- -
        ------- -----------------------
        ------------------ -
            -----
        --
        -- -- --------------------------------
        ------------------- -
            -- --------------
            --------------- -
                ----------- -
                    -
                        -- ------- --
                        --- -------
                        -- ---------
                        ----- -----
                        -- --------------
                        --------- -
                            -- --
                            -------- -
                                -- ----
                                -
                                    --- ------------
                                    ------ -------
                                    -- -----------
                                    -------------- -------
                                    -- --- ---- ----
                                    ----- -
                                        -- ------- ----- ---
                                        ----- --------
                                        -- ---------
                                        ------------ -------
                                        -- -------------
                                        -------- -
                                            ----- -------
                                            ----- -----------
                                            ----------- ---------
                                        -
                                    -
                                -
                            -
                        -
                    -
                -
            --
            -----
        --
        -----
    --
    -----
--

在编辑中使用扩展属性面板

在完成以上配置后,我们即可在 bpmn-js 编辑中使用扩展属性面板。

例如,在某个元素上右键单击,弹出弹出菜单后,单击 “Edit” 可以看到显示了新添加的属性面板。

-- ---

-- ----
---------------------------------------------- -
    -- -------------------------- -
        ------------- - -------------
        ------------------------------
    -
    ------ ------
---

-----

---
 - ------
 - ------ ------ -- -- ---- -- --
 --
-------- ------------- -
    ----- - -----------

    --- ----- - ----- - ----------------------

    -- -------- -
        ----- - ------------
            ------ -----------------------------
            -----
        ---
    - ---- -
        -------------
    -
-

完整示例代码

下面是一个完整的示例,包括了 BpmnModeler 的配置和添加事件:

------ ------ ---- ---------
------ ----------- ---- ----------------------
------ --------------------- ---- ---------------------------
------ ------------------------------------ ---- --------------------------------------------
------ ---- ---- -------
------ -
    --------
- ---- ---------
------------- - -------

----- --------- - ----------------------------------
----- ------------------------ - -----------------------------------------------

-- ------- ------
----- ----------------- - -
    ----------------------
    ------------------------------------
--

-- ------- ------ -------------
----- --------------- - -
    ------------- --------
    ---------- -------
    ---------- -------
    ------------ -----
    ---------------- -----
    ------------- -------
    ----------- -------
    --------------- ------
--
-- --- -------

----- ----------- - ------ ------------- ---------------- ---------------------------------- -------------------------------------------------------- ------------------------------------------------------- ------------------------------------------------- ------------------------------------------------- ------------------ ---------------------------------------------------------- -------------- ------------------------------------- ----------------------------------------------------- ------------------------------------ ---------------- ----------------------------------------- ---------------------------- ------------------------------------- ------- ------- ---------- ---------------------------------------------------------------------------------------------

----- ----------------------- - ------------------ -----------------

----- ------- - --- -------------
            ---------- ----------
            ---------------- -
                -- --------------
                ------- -----------------------
                ------------------ -
                    ------------------------------------
                --
                ------------------- -
                    ----------- -
                        ------ ----------
                        ----------- -
                            -
                                --- -------
                                ----- -----
                                ------------ -------
                                ------- --------------
                                ----- -
                                    ----- --------
                                    -------- -
                                        ----- -------
                                        ----- -----------
                                        ----------- ---------
                                    -
                                -
                            -
                        -
                    --
                    ----- -
                        ------ -------
                        ----------- -
                            -
                                --- ---------------
                                ------------ ---- --- ---- -- --- ---------
                                ------ -------- ------
                                ----- ---------
                                ------ --- ---------
                                --------- -----
                                -------- -
                                    ----- -----------
                                    ----- -------
                                    ----------- ----------
                                -
                            -
                        -
                    --
                    --------- -
                        ------ -----------
                        ----------- -
                            -
                                --- -------------
                                ------ -------- ----
                                ----- ---------
                                ------ ---
                                ------ ------------------
                                ------------ ---- ---------- ----
                                --------- -----
                                -------- -
                                    ----- -----------
                                    ----- ---------------------
                                    ----------- ----------
                                -
                            --
                            -
                                --- ---------------------
                                ------ ---------- ----------
                                ----- --------
                                ------------ ---------- ----------
                                ------ ------------------
                                --------- -----
                                -------- -
                                    ----- -----------
                                    ----- -----------------------------
                                    ----------- ----------
                                --
                                -------------- -
                                    -
                                        ----- ----- -------
                                        ------ -------
                                    --
                                    -
                                        ----- -------------
                                        ------ ------------
                                    --
                                    -
                                        ----- --------- ------------
                                        ------ --------------------
                                    -
                                -
                            -
                        -
                    -
                -
                --
                ------------------ -
                    ----
                --
                ----------------- -
                    -- ---
                --
                -- ------
                -- ---
---
-- ---

-------- ------------------------------------ ------- --- -------- -

    ----- ----------- - ------------ -----

    ------------------------------ -

        --------------------------------- ---------- -
            ----- ---- - -------------------------

            -- ----- ---- ---------- -- --- -----
            -- --------- --- -------- -- --------
            ----------------- -----------
        ---
    ---
-


----------------------------
    -------- ------------------------
        ---------------- -
        --------------------- ---- -
            -- ----- -
                -------------------- -----
            -
        ---
    -
--

-------- ------------- -

    ----------------- ------- ---- -- ------------- ---- -
        --------- -----
    ---
-

-------- ------------------ -
    -------------------------
-
-------- ---------------- -
    ---------------------- ------------- -
        -- ----- -
            -------------------
        - ---- -
            -------------------------
        -
    ---
-

-------- ------------ -

    -- --------- -- --------- --- -- -- - - --- -

        --------------------- ---- -

            -- ----- -
                --------------------- -- ---- ----- -----
            - ---- -
                ----------------- --------
            -
        ---

        --------------------
        -------------------
    -
-

------------------------------------ -----------

--------------------------------------------- ---------- -
    -------------------
---

总结

本文主要介绍了如何使用 npm 包 bpmn-js-properties-panel-activiti-support 进行前端开发,并通过详细的示例代码展示了如何在 BpmnModeler 中添加扩展面板配置,同时也提供了关于该 npm 包使用的深度指导意义。相信读者在学习过程中已经掌握了该 npm 包的使用方法,能够在实际开发中灵活使用该 npm 包。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/600673dffb81d47349e53c40


猜你喜欢

  • npm 包 @cfi2017/tslint-teamcity-reporter 使用教程

    简介 在前端开发过程中,代码规范的重要性不言而喻。针对 TypeScript 代码,tslint 作为其代码规范工具,也成为了前端开发中的必备工具之一。而 @cfi2017/tslint-teamci...

    4 年前
  • npm 包 motor-controller 使用教程

    简介 motor-controller 是一个基于 Node.js 的 npm 包,用于控制机器人或其他电动设备的电机。它提供了多种电机控制方式,包括 PWM 和 GPIO 等,能够满足不同场合的需求...

    4 年前
  • npm 包 eno-loader 使用教程

    在前端开发中,我们经常会使用一些工具和库来提高工作效率。其中,npm 是最常用的包管理器之一。npm 可以让我们轻松地安装、更新和卸载包,而且还提供了一个巨大的包仓库。

    4 年前
  • npm包 cordova-plugin-android-wifi-lock 使用教程

    在移动应用的开发过程中,对设备硬件的控制可能是必不可少的。其中,对于 Wi-Fi 模块的控制是相当重要的一部分。而 cordova-plugin-android-wifi-lock 就是一个非常好用的...

    4 年前
  • npm 包 @lvannebenne/get-holidays 的使用教程

    简介 @lvannebenne/get-holidays 是一个方便获取国内外节假日信息的 npm 包。它提供了多国假期的数据,用户可以轻松地获取某个国家、某个年份的节假日信息。

    4 年前
  • npm 包 jb-dateinput-react 使用教程

    在前端开发中,日期选择器是一个常用的功能,而目前市面上的日期选择器种类繁多、代码复杂。为了解决这个问题,jb-dateinput-react 库诞生了。jb-dateinput-react 是基于 R...

    4 年前
  • npm 包 @jaypy.code/upload-sdk 使用教程

    介绍 在前端开发中,文件上传是个常见的需求,有许多第三方上传组件可供使用。其中,npm 包 @jaypy.code/upload-sdk 是一个可以帮助我们完成文件上传的工具,它使用了现代的上传技术,...

    4 年前
  • npm 包 @morlz/json2typescript 使用教程

    在前端开发中,我们经常需要将 JavaScript 对象和 JSON 数据进行转换。虽然 JavaScript 支持将对象转换为 JSON 字符串,但是将 JSON 数据转换为 JavaScript ...

    4 年前
  • npm 包 koa-quick-start 使用教程

    简介 koa-quick-start 是一款基于 Koa2 框架的脚手架,可快速搭建 web 应用。它使用了 MVC 设计模式,封装了常用的功能,如请求处理、路由控制、数据库操作等,让开发者能够更加专...

    4 年前
  • npm 包 @ebizon/react-native-advance-image-cropper 使用教程

    在 React Native 开发中,图片裁剪是一个常见需求,在 npm 包中,有许多 React Native 图片裁剪库可供使用。但是,在所有的图像裁剪器中,@ebizon/react-nativ...

    4 年前
  • npm 包 calls-batch 使用教程

    在前端开发中,我们经常会遇到需要批量调用异步接口的情况。在这种情况下,可以使用 npm 包 calls-batch 来优化相关的代码。 什么是 calls-batch calls-batch 是一个针...

    4 年前
  • npm 包 @ebizon/react-native-advance-draggable-view 使用教程

    前言 在移动端开发中,常常需要实现可拖拽的元素,例如拖拽弹窗、拖拽选项等。而 React Native 平台下的 @ebizon/react-native-advance-draggable-view...

    4 年前
  • npm 包测试工具 test-2019-8-26 使用教程

    前言 在前端开发中,npm 包是不可或缺的一部分。而测试 npm 包的质量也是非常重要的,它可以确保你的 npm 包能够顺利地完成它的职责,同时防止出现一些 bug。

    4 年前
  • npm 包 winston-warp10 使用教程

    前言 在前端开发中,日志是我们必须要关注的一个部分。在生产环境中,我们需要通过日志记录代码的运行状态、错误堆栈等信息,方便快速定位和修复问题。而在开发过程中,日志也可以帮助我们快速了解代码的运行状态和...

    4 年前
  • npm 包 raphaellopes07-react-styled-carousel 使用教程

    在前端开发中,组件库和工具包可以大大提高开发效率,减少代码重复和错误,其中一个常用的包就是 raphaellopes07-react-styled-carousel。

    4 年前
  • npm包rn-android-picker-dialog使用教程

    在React Native开发中,我们通常需要使用第三方模块来增强完成某些功能。rn-android-picker-dialog是React Native的一个npm包,它可以帮助我们快速地创建出An...

    4 年前
  • npm 包 ee-khadija-cordova-plugin-firebase 使用教程

    1. 简介 ee-khadija-cordova-plugin-firebase 是一款 Cordova 插件,用于将 Firebase 集成到 Cordova 应用程序中。

    4 年前
  • npm 包 npxkardiah 使用教程

    什么是 npxkardiah? npxkardiah 是一个用于管理、创建、部署以及发布项目的命令行工具。通过 npxkardiah,我们可以快速地初始化一个项目,生成现代化的 Web 应用程序,快速...

    4 年前
  • npm 包 idb-lite 使用教程

    什么是 idb-lite idb-lite 是一个基于 IndexedDB API 封装的轻量级 JavaScript 库,主要用于在客户端浏览器中存储数据。它提供简洁易用的 API,可用于存储和检索...

    4 年前
  • npm 包 stremio-local-addon 使用教程

    npm 包 stremio-local-addon 使用教程 随着互联网的飞速发展,视频媒体作为一种重要的信息传播形式,其在人们生活中扮演着越来越重要的角色。stremio 是一个热门的在线视频播放器...

    4 年前

相关推荐

    暂无文章