zoukankan      html  css  js  c++  java
  • vue 集成 activiti

    activiti 前端代码地址:https://github.com/Funnyman-S/spring-boot-with-activiti-modeler/tree/master/src/main/resources/public

    下载下来之后,将代码放到public文件夹下面。

    步骤:

    1.新建Vue文件

    <template>
      <div class="modeler">
        <iframe :src="src" frameborder="0" class="iframe"></iframe>
      </div>
    </template>
    
    <script>
    import { mapGetters, mapState } from "vuex";
    import api from "@/config/api";
    export default {
      data() {
        return {
          src: ""
        };
      },
      components: {},
      computed: {
        ...mapState("perModeler", {
          modelId: state => state.modelId
        }),
        ...mapGetters([
          "token"
        ]),
        // src() {
        //   return "/activiti1/modeler.html?modelId=" + this.modelId;// activiti主html路径
        // },
        apiUrl() {
          return process.env.VUE_APP_API;// 后台部署的api服务
        },
      },
      created() {
        this.src = "/activiti1/modeler.html?modelId=" + this.modelId;
      },
      mounted() {
        window.getMyVue = this;
      },
      methods: {}
    };
    </script>
    
    <style lang="scss" scoped>
    .iframe {
       100%;
      height: calc(100vh - 154px);
    }
    </style>
    

      

    2.找到activiti前端modeler.html文件,加上:

    调接口使用你的系统的token。

    <script>
        (
          function (open) {
            XMLHttpRequest.prototype.open = function (method, url, async, user, pass) {
              open.call(this, method, url, async, user, pass);//this指XMLHttpRequest
              this.setRequestHeader("token", window.parent.getMyVue.token);//mounted时传入的token
            };
          }
        )(XMLHttpRequest.prototype.open);
      </script>
    

      

    3.找到app-cfg.js文件,修改接口地址(vue使用代理地址)

    /*
     * Activiti Modeler component part of the Activiti project
     * Copyright 2005-2014 Alfresco Software, Ltd. All rights reserved.
     *
     * This library is free software; you can redistribute it and/or
     * modify it under the terms of the GNU Lesser General Public
     * License as published by the Free Software Foundation; either
     * version 2.1 of the License, or (at your option) any later version.
     *
     * This library is distributed in the hope that it will be useful,
     * but WITHOUT ANY WARRANTY; without even the implied warranty of
     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
     * Lesser General Public License for more details.
    
     * You should have received a copy of the GNU Lesser General Public
     * License along with this library; if not, write to the Free Software
     * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
     */
    'use strict';
    
    var ACTIVITI = ACTIVITI || {};
    
    ACTIVITI.CONFIG = {
      'contextRoot': window.parent.getMyVue.apiUrl + '/service', // vue文件中自己定义的代理地址,比如vue.config.js中的代理"apis"
    };
    

      vue,config.js:

     devServer: {
        host: "127.0.0.1",
        hot: true,
        port: 8000,
        inline: true,
        proxy: {
          "/apis": {
            // target: "http://888888888/",
            changeOrigin: true,
            pathRewrite: {
              "/apis": "",
            },
          },
        },
      },
    

      

    可能出现的问题;

    1.打开页面显示不出样式,获取不到资源:检查路径是否正确,modeler.html下面的js、css资源是否可以获取到。

    2.json请求文件报错,找到请求位置,检查路径是否正确。

    3.渲染不出流程图,modelId是必带的参数,必带必带必带!! 

    最后:2021新年快乐!

  • 相关阅读:
    LCA算法总结
    【福利】论机房如何关闭方正软件保护卡
    codevs 2190 有理逼近
    用C语言的rand()和srand()产生伪随机数的方法总结
    float,double等精度丢失问题 float,double内存表示
    #incldue<cctype>函数系列
    poj 2348 Euclid's Game 题解
    poj 2240 Arbitrage 题解
    洛谷 p1352 没有上司的舞会 题解
    BZOJ 1093 最大半连通子图 题解
  • 原文地址:https://www.cnblogs.com/sxdjy/p/14384411.html
Copyright © 2011-2022 走看看