vue JointJS 实例demo
前言
越来越发现,前端深入好难哦!虐成渣渣了。
需求:前端绘制灵活的关系图(此demo还是简单的,我的需求才跨出一小步)
安装
npm install jointjs
容器,工具栏
<template>
<div id="toolbar">
<button class="btn add-question" :click='addNode'>Add Node</button>
<button class="btn add-answer">Add Answer</button>
<button class="btn preview-dialog">Preview Dialog</button>
<button class="btn code-snippet">Code Snippet</button>
<button class="btn clear">Clear Canvas</button>
<button class="btn load-example">Load Example</button>
</div>
<div id="myholder" @click="click_joint"></div>
</template>
<script>
require('../assets/css/toolbar.css')
import ParamidaPay from "../paramidaPay.js"
import joint from 'jointjs'
import $ from 'jquery' export default {
name: 'App',
data: function () {
return {
active: true
}
},
mounted: function () {
this.inti()
},
methods: {
inti(){
// 先创建joint graph 对象
var graph = new joint.dia.Graph(); //设定容器基本信息
var paper = new joint.dia.Paper({
el: document.getElementById('myholder'),
width: 900,
height: 700,
model: graph,
});
let rect = new joint.shapes.basic.Rect({
position: { x: 100, y: 30 },
size: { width: 100, height: 30 },
attrs: {
rect: { fill: 'rgb(75, 74, 103)' }, text: { text: 'node', fill: 'white' }
}
})
let rect2 = rect.clone(); let rect3 = rect.clone();
rect2.translate(300);
rect3.translate(600); let link = new joint.dia.Link({
source: { id: rect.id },
target: { id: rect2.id }
}) graph.addCells([rect, rect2, rect3,link]);
}
},
addNode(){ }
}
</script>
<style>
#myholder{
width: 900px;
height: 700px;
margin: 0 auto;
margin-top: 25px;
border: 1px solid #d3d3d3;
}
</style>
运行效果

Fannie式总结
是不是有点好看
话不多说,我其实是为了保存代码,最小单元
然后我要接着做下去了
好了,emmmm(调研阶段有更多的坑,我下一篇文章写)
vue JointJS 实例demo的更多相关文章
- Vue UI组件 开发框架 服务端 辅助工具 应用实例 Demo示例
Vue UI组件 开发框架 服务端 辅助工具 应用实例 Demo示例 element ★11612 - 饿了么出品的Vue2的web UI工具套件 Vux ★7503 - 基于Vue和WeUI的组件库 ...
- Vue.js实例练习
最近学习Vue.js感觉跟不上节奏了,Vue.js用起来很方便. 主要实现功能,能添加书的内容和删除.(用的Bootstrap的样式)demo链接 标题用了自定义组件,代码如下: components ...
- 前端MVC Vue2学习总结(二)——Vue的实例、生命周期与Vue脚手架(vue-cli)
一.Vue的实例 1.1.创建一个 Vue 的实例 每个 Vue 应用都是通过 Vue 函数创建一个新的 Vue 实例开始的: var vm = new Vue({ // 选项 }) 虽然没有完全遵循 ...
- vue的实例
vue的实例 创建一个vue实例的写法和创建一个变量一样 var vm = new Vue{{ //我们一般用vm来接收vue的实例,vm是 ViewModel的缩写 }} 然后,我们就可以给vue实 ...
- ArcGIS API for JavaScript开发环境搭建及第一个实例demo
原文:ArcGIS API for JavaScript开发环境搭建及第一个实例demo ESRI公司截止到目前已经发布了最新的ArcGIS Server for JavaScript API v3. ...
- Android ListFragment实例Demo(自己定义适配器)
上一篇文章介绍了ListFragment,当中的ListView并没有自己定义适配器,实际上在实际开发中常会用到自己定义适配器,是实现更复杂的列表数据展示. 所以这篇文章添加了自己定义适配器.来进行L ...
- 3 weekend110的hadoop中的RPC框架实现机制 + hadoop中的RPC应用实例demo
hadoop中的RPC框架实现机制 RPC是Remotr Process Call, 进程间的远程过程调用,不是在一个jvm里. 即,Controller拿不到Service的实例对象. hadoop ...
- Vue组件实例间的直接访问
前面的话 有时候需要父组件访问子组件,子组件访问父组件,或者是子组件访问根组件. 在组件实例中,Vue提供了相应的属性,包括$parent.$children.$refs和$root,这些属性都挂载在 ...
- vue.js实例对象+组件树
vue的实例对象 首先用js的new关键字实例化一个vue el: vue组件或对象装载在页面的位置,可通过id或class或标签名 template: 装载的内容.HTML代码/包含指令或者其他组件 ...
随机推荐
- 使用FireFox插件RESTClient、HttpRequester模拟http(get post)请求
我们写好一个接口后,需要进行测试.有时我们会写一个html表单提交,无疑增加了工作量,尤其是当参数比较多或者传json或xml数据时,效率更是大大降低.我们可以使用基于FireFox的RESTClie ...
- HDFS namenode 写edit log原理以及源码分析
这篇分析一下namenode 写edit log的过程. 关于namenode日志,集群做了如下配置 <property> <name>dfs.nameservices< ...
- mysql的又一个让人捉摸不透的bug?
这次就不说很多没有写博客了,因为前几天已经写过了.\^o^/ 昨天我们刚讨论了关于自动化运维工作的实现方式,如果批量执行,中间出错怎么办?突然有人提出mysql支持--force,可以跳过出错继续执行 ...
- linq not in
linq not in 查询 or join not in var query = from c in _opvRepository.Table join a in _orderRepository. ...
- Azure 中的虚拟网络和虚拟机
创建 Azure 虚拟机 (VM) 时,必须创建虚拟网络 (VNet) 或使用现有的 VNet. 此外,还需要确定如何在 VNet 上访问 VM. 在创建资源之前必须做好规划,确保了解网络资源的限制. ...
- IE8 下面通过滤镜的方式进行图片旋转
首先,为什么我会提出这样的方式来进行操作呢?原因还是需求导致: 在做项目中,有这样一个需求,在进行网页中图片查看的时候,需要对图片的操作有支持旋转和缩放这些操作,看似这样的网上插件有很多,对!但是对于 ...
- 【爬坑】运行 Hadoop 的 MapReduce 示例卡住了
1. 问题说明 在以伪分布式模式运行 Hadoop 自带的 MapReduce 示例,卡在了 Running job ,如图所示 2. 解决过程 查看日志没得到有用的信息 再次确认配置信息没有错误信息 ...
- Linux查看系统负载(CPU和MEM考虑)
查看占用CPU最高的10个进程 [tidb@:vg_adn_tidbCkhsTest:| head mysql ? Sl Nov22 : /usr/local/mysql/bin/mysqld --b ...
- T-SQL应用实例
实验一:实验案例一(附加“练习用的可以附加的数据库--class”) 1.在products表中查询出厂日期晚于2014年4月的水果信息. select * from products where ...
- 高斯求积公式 matlab
1. 分别用三点和四点Gauss-Chebyshev公式计算积分 并与准确积分值2arctan4比较误差.若用同样的三点和四点Gauss-Legendre公式计算,也给出误差比较结果. 2*atan( ...