Vue-cli3生成的Vue项目加载Mxgraph方法示例


Posted in Javascript onMay 31, 2020

使用Vue-cli3生成Vue项目,并等待项目创建成功。

vue create [项目名]

安装mxgraph。

cnpm install mxgraph --save

安装exports-loader。

cnpm install exports-loader --save

安装script-loader。

cnpm install script-loader --save

在项目根目录新建vue.config.js文件。

将以下内容复制到vue.config.js文件中。

const path = require('path');

function resolve(dir) {
  return path.join(__dirname, dir);
}

module.exports = {
  publicPath: './',
  outputDir: 'dist',
  lintOnSave: true,
  chainWebpack: (config) => {
    config.module
      .rule('')
      .test(/mxClient\.js$/)
      .use('exports-loader')
      .loader('exports-loader?mxClient,mxGraphModel,mxActor,mxShape,mxEventObject,mxGraph,mxPrintPreview,mxEventSource,mxRectangle,mxVertexHandler,mxMouseEvent,mxGraphView,mxImage,mxGeometry,mxRubberband,mxKeyHandler,mxDragSource,mxGraphModel,mxEvent,mxUtils,mxWindow,mxEvent,mxCodec,mxCell,mxConstants,mxPoint,mxGraphHandler,mxCylinder,mxCellRenderer,mxEvent,mxUndoManager')
      .end();
    config.resolve.alias
      .set('@', resolve('src'))
      .set('@assets', resolve('src/assets'));
    // 按这种格式.set('', resolve('')) 自己添加
  }
};

修改HelloWorld.vue,替换为以下内容。

<template>
  <div ref="graph_container"></div>
</template>

<script>
import {
  mxGraph
} from 'mxgraph/javascript/mxClient';

export default {
  name: 'HelloWorld',
  props: {
    msg: String
  },
  mounted() {
    // Creates the graph inside the given container
    var graph = new mxGraph(this.$refs.graph_container);

    // Gets the default parent for inserting new cells. This
    // is normally the first child of the root (ie. layer 0).
    var parent = graph.getDefaultParent();

    // Adds cells to the model in a single step
    graph.getModel().beginUpdate();
    try {
      let v1 = graph.insertVertex(parent, null, 'Hello,', 20, 20, 80, 30);
      let v2 = graph.insertVertex(parent, null, 'World!', 200, 150, 80, 30);

      graph.insertEdge(parent, null, '', v1, v2);
    } finally {
      // Updates the display
      graph.getModel().endUpdate();
    }
  }
};
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
h3 {
  margin: 40px 0 0;
}

ul {
  list-style-type: none;
  padding: 0;
}

li {
  display: inline-block;
  margin: 0 10px;
}

a {
  color: #42b983;
}
</style>

运行项目,查看效果。此Demo的源码可以查看

到此这篇关于Vue-cli3生成的Vue项目加载Mxgraph方法示例的文章就介绍到这了,更多相关Vue项目加载Mxgraph内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
jquery 多行滚动代码(附详细解释)
Jun 17 Javascript
JQuery中如何传递参数如click(),change()等具体实现
Apr 28 Javascript
div当滚动到页面顶部的时候固定在顶部实例代码
May 27 Javascript
动态改变div的z-index属性的简单实例
Aug 08 Javascript
jquery validate 自定义验证方法介绍 日期验证
Feb 27 Javascript
javascript事件冒泡详解和捕获、阻止方法
Apr 12 Javascript
jQuery实现购物车多物品数量的加减+总价计算
Jun 06 Javascript
Javascript实现颜色rgb与16进制转换的方法
Apr 18 Javascript
详解JavaScript对W3C DOM模版的支持情况
Jun 16 Javascript
详解Html a标签中href和onclick用法、区别、优先级别
Jan 16 Javascript
layui动态加载多表头的实例
Sep 05 Javascript
Ant Design的Table组件去除
Oct 24 Javascript
详解Typescript 内置的模块导入兼容方式
May 31 #Javascript
部署vue+Springboot前后端分离项目的步骤实现
May 31 #Javascript
JQuery获得内容和属性方法解析
May 30 #jQuery
JavaScript Window浏览器对象模型原理解析
May 30 #Javascript
基于canvasJS在PHP中制作动态图表
May 30 #Javascript
jQuery实现视频展示效果
May 30 #jQuery
vue实现购物车加减
May 30 #Javascript
You might like
php数组函数序列之array_unshift() 在数组开头插入一个或多个元素
2011/11/07 PHP
浅析Yii中使用RBAC的完全指南(用户角色权限控制)
2013/06/20 PHP
PHP实现更新中间关联表数据的两种方法
2014/09/01 PHP
PHP实现生成唯一会员卡号
2015/08/24 PHP
PHP中ID设置自增后不连续的原因分析及解决办法
2016/08/21 PHP
PHP实现的简单路由和类自动加载功能
2018/03/13 PHP
PHP利用递归函数实现无限级分类的方法
2019/03/22 PHP
javascript学习网址备忘
2007/05/29 Javascript
javascript void(0)的妙用
2009/10/21 Javascript
关于juqery radio写法的兼容性问题(新老版本jquery)
2010/06/14 Javascript
今天是星期几的4种JS代码写法
2013/09/17 Javascript
jQuery中操控hidden、disable等无值属性的方法
2014/01/06 Javascript
JS实现弹出浮动窗口(支持鼠标拖动和关闭)实例详解
2015/08/06 Javascript
jquery+php随机生成红包金额数量代码分享
2015/08/27 Javascript
JS+CSS简单树形菜单实现方法
2015/09/12 Javascript
微信小程序 开发经验整理
2017/02/15 Javascript
JavaScript中数组Array方法详解
2017/02/27 Javascript
jQuery+CSS3实现点赞功能
2017/03/13 Javascript
node中的密码安全(加密)
2018/09/17 Javascript
详解微信UnionID作用
2019/05/15 Javascript
利用JavaScript的Map提升性能的方法详解
2019/08/14 Javascript
js简单实现自动生成表格功能示例
2020/06/02 Javascript
[28:48]《真视界》- 2017年国际邀请赛
2017/09/27 DOTA
遍历python字典几种方法总结(推荐)
2016/09/11 Python
分享Pycharm中一些不为人知的技巧
2018/04/03 Python
python检测主机的连通性并记录到文件的实例
2018/06/21 Python
python实现各种插值法(数值分析)
2019/07/30 Python
详解python中的模块及包导入
2019/08/30 Python
python爬虫容易学吗
2020/06/02 Python
用opencv给图片换背景色的示例代码
2020/07/08 Python
python属于哪种语言
2020/08/16 Python
绩效考核实施方案
2014/03/18 职场文书
授权委托书怎么写
2014/04/03 职场文书
写给父母的感谢信
2015/01/22 职场文书
春节慰问简报
2015/07/21 职场文书
2015年政治教研组工作总结
2015/07/22 职场文书