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

网站权重如何做佛山网站建设制作公司

网站权重如何做,佛山网站建设制作公司,建筑设计公司名称,新媒体代运营公司1.问题 ReactFlow的ReactFlow实例有些事件我们在不同的状态下并不需要,而且有时候传参会出现其它渲染效果,比如只读状态下我们不想要拖拉拽onEdgesChange连线重连或删除的功能。 2.思路 事件名称类型默认值onEdgesChange(changes: EdgeChange[]) >…

1.问题

ReactFlow的ReactFlow实例有些事件我们在不同的状态下并不需要,而且有时候传参会出现其它渲染效果,比如只读状态下我们不想要拖拉拽onEdgesChange连线重连或删除的功能。
请添加图片描述

2.思路

事件名称类型默认值
onEdgesChange(changes: EdgeChange[]) => void
使用这个方法来处理处理连线重新选择连接或者删除连线。
               

ReactFlow实例如果没有传监听事件方法,父节点就不会触发事件,那么我们试着切换传参处理。通过传参undefined,成功的没有触发对应事件,同时也没有出现渲染可拖拉拽连线的标志。

3.解决方案

import React, { useCallback, useRef, useState } from 'react';
import ReactFlow, { useNodesState, useEdgesState, Controls, updateEdge, addEdge } from 'reactflow';
import 'reactflow/dist/style.css';const initialNodes = [{id: '1',type: 'input',data: { label: 'Node A' },position: { x: 250, y: 0 },},{id: '2',type: 'output',data: { label: 'Node B' },position: { x: 250, y: 200 },}
];const initialEdges = [{ id: 'e1-2', source: '1', target: '2', label: 'updatable edge' }];const DeleteEdgeDrop = () => {const edgeUpdateSuccessful = useRef(true);const [nodes, , onNodesChange] = useNodesState(initialNodes);const [edges, setEdges, onEdgesChange] = useEdgesState(initialEdges);const onConnect = useCallback((params) => setEdges((els) => addEdge(params, els)), []);//	用于控制状态const [readonly, setReadonly] = useState(true);const onEdgeUpdateStart = useCallback(() => {edgeUpdateSuccessful.current = false;}, []);const onEdgeUpdate = useCallback((oldEdge, newConnection) => {edgeUpdateSuccessful.current = true;setEdges((els) => updateEdge(oldEdge, newConnection, els));}, []);const onEdgeUpdateEnd = useCallback((_, edge) => {if (!edgeUpdateSuccessful.current) {setEdges((eds) => eds.filter((e) => e.id !== edge.id));}edgeUpdateSuccessful.current = true;}, []);return (<ReactFlownodes={nodes}edges={edges}onNodesChange={onNodesChange}onEdgesChange={onEdgesChange}snapToGrid//	这里用条件语句切换传参//	如果不需要传参,只能传undefined!!!onEdgeUpdate={!readonly? onEdgeUpdate : undefined}onEdgeUpdateStart={onEdgeUpdateStart}onEdgeUpdateEnd={onEdgeUpdateEnd}onConnect={onConnect}fitViewattributionPosition="top-right"><Controls /></ReactFlow>);
};export default DeleteEdgeDrop;

4.结果

事件传参传undefined成功的取消了事件以及渲染效果。综上所述,在ReactFlow的ReactFlow实例事件可通过传参undefined取消传参或切换事件传参。
请添加图片描述

http://www.jinmujx.cn/news/111415.html

相关文章:

  • layui做网站专业搜索引擎seo公司
  • 日本专门做恋足的网站广告推广 精准引流
  • 做网站怎么开发客户源站长工具官网查询
  • 网站里面添加支付怎么做网站优化及推广
  • 杭州网站建设公司联系方式什么推广平台好
  • 怎么做网站呀首页关键词怎么排名靠前
  • 文创产品网站郑州网站优化公司
  • 深圳便宜建网站网站在线客服系统免费
  • 做的网站怎样更新免费做推广的网站
  • 青岛开发区网站建设服务网络营销心得体会
  • 批量做网站超八成搜索网站存在信息泄露问题
  • 国产 做 视频网站湖南网站设计外包费用
  • 庆元县建设局网站搜索引擎广告优化
  • 长沙网站建设 鼎誉如何进行seo
  • 提供网站建设哪家好跨境电商营销推广
  • 西城网站建设外贸接单平台网站
  • 网站建设需要考虑因素福建省人民政府门户网站
  • 国外真人做爰直播聊天平台网站营销和运营的区别是什么
  • 做网站的网络公司税收优惠三只松鼠的软文范例
  • wordpress多站点数量济南seo怎么优化
  • 潍坊市做网站的公司凡科建站平台
  • 知名营销网站开发seo外链软件
  • 天津单位网站建设全国疫情高峰感染进度查询
  • wordpress打开文章响应慢西安关键词优化服务
  • 网站建设中 即将上线html5源代码百度推广关键词规划师
  • 中国企业商铺网google seo 优化招聘
  • wordpress的vps建站流程厦门seo优
  • wordpress获取图片id东莞关键词排名seo
  • 做字典网站开发海底捞口碑营销
  • 香港产地证在哪个网站做自己怎么开发app软件