vue+relation-graph繪制關(guān)系圖實(shí)用組件操作方法
先在終端執(zhí)行命令
vue create relationgraph
創(chuàng)建一個(gè)vue2的項(xiàng)目
然后在編輯器中打開新創(chuàng)建的項(xiàng)目在終端中執(zhí)行命令
npm install relation-graph --save
引入依賴
這樣 我們r(jià)elation-graph就進(jìn)來了
然后 我們?cè)谛枰褂玫慕M件中編寫代碼如下
<template> <div> <div style="width: calc(100% - 10px);height:100vh;"> <SeeksRelationGraph ref="seeksRelationGraph" :options="graphOptions" /> </div> </div> </template> <script> import SeeksRelationGraph from 'relation-graph'; export default { name: 'SeeksRelationGraphDemo', components: { SeeksRelationGraph }, data() { return { graphOptions: { // debug: true, // 禁用拖拽 disableDragNode: true, // backgrounImage: 'http://ai-mark.cn/images/ai-mark-desc.png', backgrounImageNoRepeat: true, layouts: [ { label: '多源化', layoutName: 'tree', layoutClassName: 'seeks-layout-center', defaultJunctionPoint: 'border', defaultNodeShape: 0, defaultLineShape: 1, from: 'left', // 通過這4個(gè)屬性來調(diào)整 tree-層級(jí)距離&節(jié)點(diǎn)距離 min_per_width: '200', max_per_width: '500', // min_per_height: '40', // max_per_height: '60', // 如果此選項(xiàng)有值,則優(yōu)先級(jí)高于上面那4個(gè)選項(xiàng) levelDistance: '', }, ], // 箭頭樣式 defaultLineMarker: { markerWidth: '0', markerHeight: '0', refX: '0', refY: '0', }, defaultExpandHolderPosition: 'right', defaultNodeShape: 1, defaultNodeWidth: '100', // 節(jié)點(diǎn)寬度 defaultLineShape: 4, //線條樣式 defaultJunctionPoint: 'lr', defaultNodeBorderWidth: 0, defaultLineColor: 'rgba(0, 186, 189, 1)', defaultNodeColor: 'rgba(0, 206, 209, 1)', } }; }, mounted() { this.setGraphData(); }, methods: { setGraphData() { var __graph_json_data = { rootId: 'N1', nodes: [ { id: 'N1', text: '測(cè)試方案', color: '#2E4E8F' }, { id: 'N15', text: '高級(jí)規(guī)劃', color: '#4ea2f0' }, { id: 'N16', color: '#4ea2f0', html: `<div class="A"> <div class="A-1">高級(jí)測(cè)試管理方案</div> <div class="A-2">映射工具</div> </div>`, }, { id: 'N17', text: '微化文案管理', color: '#4ea2f0', }, { id: 'N18', text: '初級(jí)測(cè)試文案', color: '#4ea2f0' } ], links: [ { from: 'N1', to: 'N15' }, { from: 'N15', to: 'N16' }, { from: 'N15', to: 'N17' }, { from: 'N15', to: 'N18' }, { from: 'N15', to: 'N19' }, ], }; this.$refs.seeksRelationGraph.setJsonData( __graph_json_data, (seeksRGGraph) => { console.log(seeksRGGraph); } ); }, }, }; </script> <style> </style>
這里 首先 大家要縷清關(guān)系 我們每個(gè)節(jié)點(diǎn)都帶有id 例如N1 N15然后 我們?cè)O(shè)置根節(jié)點(diǎn)的id是N1links梳理了元素之前的關(guān)系N15 插入在N1 下 剩下的 N16 N17 N18 N19則插入在N15下然后 我們可以通過{ id: ‘唯一標(biāo)識(shí)’, text: ‘內(nèi)容文本’, color: ‘顏色代碼’ }也可以通過{ id: ‘唯一標(biāo)識(shí)’, html: ‘頁(yè)面結(jié)構(gòu)字符串’, color: ‘顏色代碼’ }來完成最后 我們運(yùn)行出來的效果是這樣的
右邊的操作了也都是可以用的 我們可以進(jìn)行放大 縮小 甚至下載到本地
到此這篇關(guān)于vue+relation-graph繪制關(guān)系圖實(shí)用組件的文章就介紹到這了,更多相關(guān)vue relation graph關(guān)系圖組件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue項(xiàng)目強(qiáng)制清除頁(yè)面緩存的例子
今天小編就為大家分享一篇vue項(xiàng)目強(qiáng)制清除頁(yè)面緩存的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-11-11Vue3?跨域配置devServer的參數(shù)和設(shè)置方法
這篇文章主要介紹了Vue3?跨域配置devServer的參數(shù)和設(shè)置,本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04vue實(shí)現(xiàn)移動(dòng)端彈出鍵盤功能(防止頁(yè)面fixed布局錯(cuò)亂)
這篇文章主要介紹了vue?解決移動(dòng)端彈出鍵盤導(dǎo)致頁(yè)面fixed布局錯(cuò)亂的問題,通過實(shí)例代碼給大家分享解決方案,對(duì)vue?移動(dòng)端彈出鍵盤相關(guān)知識(shí)感興趣的朋友一起看看吧2022-04-04vue組件傳值(高級(jí))、屬性傳值、反向傳值、跨級(jí)傳值實(shí)例詳解
父組件通過屬性傳值給子組件,父組件修改數(shù)據(jù)后會(huì)刷新頁(yè)面并重新傳值給子組件,子組件可以修改父組件傳的值并刷新自己的頁(yè)面?但是并不會(huì)修改父組件中的值,這篇文章主要介紹了vue組件傳值(高級(jí))、屬性傳值、反向傳值、跨級(jí)傳值,需要的朋友可以參考下2022-09-09