1.1插件功能

提供了一个可视化的流程设计器,你可以在设计器中拖拽组件,连接组件,设置组件属性。

提供了多种节点类型可共筛选。

提供了节点的相关操作,比如添加、删除、复制、粘贴、撤销节点。

提供了连线的相关操作,比如删除、撤销连线。

提供了导出流程图片、清空流程、预览模式等相关功能。

提供了相关的事件回调,你可以在事件回调中处理流程相关的逻辑。

提供了相关的属性,你可以在属性中设置组件的相关属性。

提供了相关的方法,你可以在方法中调用相关的功能。

二、快速开始

2.1:安装方式

npm i vue-dawn-flow

或者

 

yarn add vue-dawn-flow

2.2:全局注册

在 main.js 或 main.ts 中全局注册 vue-dawn-flow 插件

 

import { createApp } from 'vue'; 

import App from './App.vue' ;

import "../node_modules/vue-dawn-flow/dawn-flow.css"; 

import dawnFlow from "vue-dawn-flow" 

 

const app = createApp(App);

app.use(dawnFlow)

app.mount('#app')

2.3:页面使用

在需要使用的 vue 页面,添加如下代码

 

<template>

  <dawnFlow></dawnFlow>

</template>

2.4:示例图

vue-dawn-flow

 

vue-dawn-flow2

 

vue-dawn-flow3

 

vue-dawn-flow4

 

三、属性

3.1:节点栏

属性名称:NodeBar

作用:控制节点栏是否显示、右边节点属性栏是否显示

类型:Boolean

默认值:true

示例

 

<template>

  <dawnFlow :NodeBar="true"></dawnFlow>

</template>

3.2:工具栏

属性名称:ToolBar

作用:控制是否显示

类型:Boolean

默认值:true

示例

 

<template>

  <dawnFlow :ToolBar="true"></dawnFlow>

</template>

3.3:模式切换

属性名称:isPreview

作用:是否预览模式

类型:Boolean

默认值:false

示例

 

<template>

  <dawnFlow :isPreview="true"></dawnFlow>

</template>

四、方法

4.1:导出流程图片

方法名称:downloadImageClick

作用:下载图片

类型:Function

默认值:() => {}

示例

 

<template>

  <dawnFlow ref="dawnFlowRef"></dawnFlow>

  <button @click="downloadImage">下载图片</button>

</template>

<script lang="ts" setup>

import { ref } from "vue";

 

const dawnFlowRef = ref(null);

 

const downloadImage = () => {

  dawnFlowRef.value.downloadImageClick();

};

</script>

4.2:获取流程数据

方法名称:getFlowJson

作用:获取流程数据,可用于获取当前流程图的 JSON 数据

类型:Function

默认值:() => {}

示例

 

<template>

  <dawnFlow ref="dawnFlowRef"></dawnFlow>

  <button @click="getFlowData">获取流程数据</button>

</template>

<script lang="ts" setup>

import { ref } from "vue";

 

const dawnFlowRef = ref(null);

 

const getFlowData = () => {

  dawnFlowRef.value.getFlowJson();

};

</script>

4.3:设置流程数据

方法名称:setFlowJson

作用:设置流程数据,可用于初始化流程图

类型:Function

默认值:() => {}

示例

 

<template>

  <dawnFlow ref="dawnFlowRef"></dawnFlow>

  <button @click="setFlowData">设置流程数据</button>

</template>

<script lang="ts" setup>

import { ref } from "vue";

 

const dawnFlowRef = ref(null);

 

const setFlowData = () => {

  dawnFlowRef.value.setFlowJson();

};

</script>

4.4:删除流程

方法名称:delFlowClick

作用:删除当前流程图,清空当前流程图数据

类型:Function

默认值:() => {}

示例

 

<template>

  <dawnFlow ref="dawnFlowRef"></dawnFlow>

  <button @click="delFlowData">删除流程</button>

</template>

<script lang="ts" setup>

import { ref } from "vue";

 

const dawnFlowRef = ref(null);

 

const delFlowData = () => {

  dawnFlowRef.value.delFlowClick();

};

</script>

4.5:删除选中节点

方法名称:delSelectNodeClick

作用:删除当前选中节点,按住 ctrl 可以多选节点

类型:Function

默认值:() => {}

示例

 

<template>

  <dawnFlow ref="dawnFlowRef"></dawnFlow>

  <button @click="delSelectNodeData">删除选中节点</button>

</template>

<script lang="ts" setup>

import { ref } from "vue";

 

const dawnFlowRef = ref(null);

 

const delSelectNodeData = () => {

  dawnFlowRef.value.delSelectNodeClick();

};

</script>

4.6:删除选中连线

方法名称:delSelectEdgesClick

作用:删除当前选中连线,按住 ctrl 可以多选连线

类型:Function

默认值:() => {}

示例

 

<template>

  <dawnFlow ref="dawnFlowRef"></dawnFlow>

  <button @click="delSelectEdgesData">删除选中连线</button>

</template>

<script lang="ts" setup>

import { ref } from "vue";

 

const dawnFlowRef = ref(null);

 

const delSelectEdgesData = () => {

  dawnFlowRef.value.delSelectEdgesClick();

};

</script>

4.7:返回画布中心位置

方法名称:backCenterClick

作用:返回画布中心位置

类型:Function

默认值:() => {}

示例

 

<template>

  <dawnFlow ref="dawnFlowRef"></dawnFlow>

  <button @click="backCenter">返回画布中心位置</button>

</template>

<script lang="ts" setup>

import { ref } from "vue";

 

const dawnFlowRef = ref(null);

 

const backCenter = () => {

  dawnFlowRef.value.backCenterClick();

};

</script>

4.8:撤销上一步操作

方法名称:revokeClick

作用:撤销上一步操作

类型:Function

默认值:() => {}

示例

 

<template>

  <dawnFlow ref="dawnFlowRef"></dawnFlow>

  <button @click="revoke">撤销上一步操作</button>

</template>

<script lang="ts" setup>

import { ref } from "vue";

 

const dawnFlowRef = ref(null);

 

const revoke = () => {

  dawnFlowRef.value.revokeClick();

};

</script>

4.9:模式切换

方法名称:setPreviewState

作用:切换模式,可切换为编辑模式和预览模式

类型:Function

默认值:(boolean) => {}

示例

 

<template>

  <dawnFlow ref="dawnFlowRef"></dawnFlow>

  <button @click="switchPreviewState">切换模式</button>

</template>

<script lang="ts" setup>

import { ref } from "vue";

 

const dawnFlowRef = ref(null);

 

const switchPreviewState = (isPreview) => {

  dawnFlowRef.value.setPreviewState(isPreview);

};

</script>

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐