当前位置: 首页 > wzjs >正文

辖网站建设 网站设计网络推广外包公司干什么的

辖网站建设 网站设计,网络推广外包公司干什么的,怎么建一个小说网站,报名入口网站建设效果: LogicFlow 内部是基于MVVM模式进行开发的,分别使用preact和mobx来处理 view 和 model,所以当我们自定义节点的时候,需要为这个节点定义view和model。 参考官方文档:节点 | LogicFlow 1、自定义矩形节点 custo…

效果:

LogicFlow 内部是基于MVVM模式进行开发的,分别使用preactmobx来处理 view 和 model,所以当我们自定义节点的时候,需要为这个节点定义viewmodel

参考官方文档:节点 | LogicFlow

1、自定义矩形节点

customRect.ts文件:

import { RectNode, RectNodeModel, h } from '@logicflow/core';class TodoNodeView extends RectNode {getShape() {// 获取XxxNodeModel中定义的形状属性const { model } = this.props;const { x, y, width, height, radius } = model;// 获取XxxNodeModel中定义的样式属性const style = model.getNodeStyle();return h('g', {}, [h('rect', {...style,x: x - width / 2,y: y - height / 2,width,height,rx: radius,ry: radius,}),// h(//   // 待办图标//   'svg',//   {//     x: x - width / 2 + 5,//     // y: y - height / 2 + 5,//     // width: 25,//     // height: 25,//     y: y - height / 2 - 2,//     width: 30,//     height: 30,//     viewBox: '0 0 1274 1024',//   },//   h('path', {//     fill: '#6f757d',//     d: 'M735.483537 563.043418c-127.277094 0-230.472576 103.195482-230.472576 230.484006s103.195482 230.472576 230.472576 230.472576 230.472576-103.195482 230.472576-230.461147-103.184053-230.495435-230.472576-230.495435z m104.555573 333.999509a29.99058 29.99058 0 0 1-42.288546 0l-83.434159-83.434159a29.876286 29.876286 0 0 1-8.686296-22.56151V671.679264a29.922004 29.922004 0 0 1 59.832578 0v108.40726l74.576423 74.656428a29.99058 29.99058 0 0 1 0 42.299975z',//     // d://     //   "M655.807326 287.35973m-223.989415 0a218.879 218.879 0 1 0 447.978829 0 218.879 218.879 0 1 0-447.978829 0ZM1039.955839 895.482975c-0.490184-212.177424-172.287821-384.030443-384.148513-384.030443-211.862739 0-383.660376 171.85302-384.15056 384.030443L1039.955839 895.482975z",//   }),//   h('path', {//     fill: '#6f757d',//     d: 'M481.992276 793.538853a253.514119 253.514119 0 0 1 144.318236-228.883898q-8.114829-0.377168-16.321093-0.377169h-204.585129c-191.498538 0-347.360404 152.010179-347.360403 338.856977v19.921335c0 99.709534 153.278836 99.709534 347.360403 99.709534h221.729134A253.468402 253.468402 0 0 1 481.992276 793.538853zM490.118535 546.665178c150.707235 0 273.344019-122.648213 273.344018-273.355447S640.848628 0 490.118535 0 216.785945 122.636784 216.785945 273.309731 339.365583 546.665178 490.118535 546.665178z',//   }),// ),]);}
}class TodoNodeModel extends RectNodeModel {getNodeStyle() {const style = super.getNodeStyle();style.stroke = '#ffffff'; //节点边框颜色style.fill = '#ffffff'; //填充色return style;}initNodeData(data) {super.initNodeData(data); //调用父类的方法this.width = 180;this.height = 60;this.radius = 10;}
}export default {type: 'TodoNode',view: TodoNodeView,model: TodoNodeModel,
};

2、自定义HTML节点

customHtml.ts文件:

import { HtmlNodeModel, HtmlNode } from '@logicflow/core';
class UmlModel extends HtmlNodeModel {setAttributes() {// 设置节点宽高和锚点const width = 80;const height = 88;this.width = width;this.height = height;}
}
class UmlNode extends HtmlNode {setHtml(rootEl) {const { properties } = this.props.model;const node_md = this.props.model;const el = document.createElement('div');el.className = 'uml-wrapper';el.id = node_md.id; // html 节点绑定节点唯一ID;即可通过id 获取对应dom元素 并进行相关业务操作const html = `<div class="logdom-hml" ></div>`;el.innerHTML = '我是一个小天才';el.style.backgroundColor = 'pink';// 需要先把之前渲染的子节点清除掉。rootEl.innerHTML = '';rootEl.appendChild(el);}
}export default {type: 'Htmlnode',view: UmlNode,model: UmlModel,
};

注册自定义节点

我们可以在创建LogicFlow实例之后,render之前,使用register方法来注册自定义节点。

<template><div class="composer"><div class="workflow-app" id="container"></div></div>
</template>
<script setup lang="ts">import { onMounted, ref } from 'vue';// import { forEach, map, has } from 'lodash-es';import LogicFlow from '@logicflow/core';import '@logicflow/core/dist/style/index.css';import { Control } from '@logicflow/extension';import TodoNode from './customRect';import Htmlnode from './ProgressNode';const lf = ref();const render = (data: any) => {lf.value.render(data);};onMounted(() => {renderGraphData();render({nodes: [{id: '1',type: 'TodoNode',x: 200,y: 200,text: '开始',},{id: '2',type: 'TodoNode',x: 600,y: 300,text: '流程节点1',},{id: '3',type: 'Htmlnode',x: 600,y: 500,},],edges: [{type: 'bezier',sourceNodeId: 1,targetNodeId: 2,},],});});const renderGraphData = () => {const container: any = document.querySelector('#container');if (container) {lf.value = new LogicFlow({plugins: [Control],background: {backgroundColor: '#f5f6f7',},grid: {size: 10,type: 'dot',config: {color: '#DEE0E3',thickness: 1,},},keyboard: {// 键盘事件开关enabled: true,},// style: {//   rect: {//     // 矩形节点样式//     stroke: '#31A5FF',//     strokeWidth: 1,//     fill: '#fff',//   },// },container,});lf.value.register(TodoNode); //注册节点lf.value.register(Htmlnode); //注册节点// console.log('画布', lf.value.getGraphData()); //打印画布数据lf.value.on('node:click', (data: any) => {console.log('点击了', data.data.text.value, data);});}};
</script>
<style lang="less" scoped>.composer {height: 100%;width: 100%;.workflow-app {width: 100%;height: 100%;}}
</style>

http://www.dtcms.com/wzjs/541352.html

相关文章:

  • 如何做企业网站内容策划成都网站优化多少钱
  • 南沙免费网站建设河北邢台区号
  • 交互做的比较好的网站顺企网下载安装
  • asp.net 跳转别的网站在线简历制作网站免费
  • 一个人可以建设网站吗我是做颗粒在什么网站上
  • 足球网站网站建设wordpress 数字指纹
  • 公司建设网站费用直接列支下载 asp 网站源码
  • 找个会做网站的 一起做网站怎么做直播视频教学视频网站
  • 有什么网站做知识吗商标设计网站推荐
  • 邯郸哪儿做网站好门户网站建设和运行招标文件
  • 东莞市建设厅官方网站网站建设行业发展
  • h5网站建设代理wordpress插件怎么使用教程
  • 文化传媒主播公司 东莞网站建设品牌宣传方案怎么写
  • 湖南北山建设集团网站php 视频网站开发
  • 自主建站平台温岭网站制作
  • 国外网站注册宁波seo排名方案优化
  • 房地产 网站 设计制作网站栏目一般有哪些
  • 手机网站案列中山智能设备网站建设
  • 软件开发包括网站开发吗wordpress模板开发教程
  • 山东省住房和城乡建设挺网站站长交易网
  • 在北京建设教育协会的网站百度搜索量
  • 邯郸企业网站制作建设推广系统
  • 建设网站dns如何设置梧州做网站
  • 手机网站建设创意新颖wordpress post type
  • 对电子商务网站建设与管理的心得wordpress页面更新失败
  • 网站在公司做有什么要求吗专业网站建设现状及对策研究
  • 建永久网站金昌市住房和城乡建设局网站
  • 网站栏目划分网站开发实用技术第2版文档
  • 河北建设教育培训网站高中信息技术网站设计规划
  • 网站编辑的岗位职责海珠网站建设哪家好