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

LogicFlow 学习笔记——11. 对齐线 和 键盘快捷键

对齐线 Snapline

对齐线能够在节点移动过程中,将移动节点的位置与画布中其他节点位置进行对比,辅助位置调整。位置对比有如下两个方面。

  • 节点中心位置
  • 节点的边框

对齐线使用

普通编辑模式下,默认开启对齐线,也可通过配置进行关闭。 在静默模式下,无法移动节点,所以关闭了对齐线功能,无法通过配置开启。

对齐线样式设置

// 关闭对齐线功能
const lf = new LogicFlow({snapline: false,
});

更多样式修改参见主题

键盘快捷键 Keyboard

快捷键配置

通过创建 LogicFlow 实例时传入 options 的 keyboard 属性可以开启快捷键, 可以只配置 enabled 属性,为 true 时,代表开启默认的快捷键。

const lf = new LogicFlow({container: document.querySelector("#app"),keyboard: {enabled: true,},
});

内置快捷键功能

LogicFlow 内置了复制,粘贴,redo/undo,删除 的快捷键。

快捷键功能
cmd+c 或 ctrl+c复制节点
cmd+v 或 ctrl + v粘贴节点
cmd+z 或 ctrl+z撤销操作
cmd+y 或 ctrl+y回退操作
backspace删除操作

自定义快捷键

shortcuts 则可以定义用户自定义的一组快捷键 值得一提的是 keys 的规则,与mousetrap一致。
以自定义删除功能为例,在删除之前添加一个确认操作。

const lf = new LogicFlow({// ...keyboard: {enabled: true,shortcuts: [{keys: ["backspace"],callback: () => {const r = window.confirm("确定要删除吗?");if (r) {const elements = lf.getSelectElements(true);lf.clearSelectElements();elements.edges.forEach((edge) => lf.deleteEdge(edge.id));elements.nodes.forEach((node) => lf.deleteNode(node.id));}},},],},
});
http://www.lryc.cn/news/374638.html

相关文章:

  • FastWeb - Lua开源跨平台网站开发服务
  • 原子阿波罗STM32F767程序的控制器改为STM32F407驱动LCD屏
  • 04-jQuery工具函数及 jQuery 插件
  • 基于Python的花卉识别分类系统【W9】
  • Visual Studio Code 配置教程,手把手教你如何配置
  • 教案:Horovod v0.2 介绍与使用
  • 深入探索Spring Boot:原理与实践
  • 基于SSM框架的电影院售票网站
  • oracle发送http请求
  • 软件回归测试:策略及案例分析
  • openstack搭建
  • HIVE及SparkSQL优化经验
  • Django 5 Web应用开发实战
  • 互联网摸鱼日报(2024-06-17)
  • Docker Desktop Installer For Windows 国内下载地址
  • 做好程序前设计
  • SpringCloud:Feign远程调用
  • leetcode-05-[242]有效的字母异位词[349]两个数组的交集[202]快乐数[1]两数之和
  • C语言实现动态栈
  • 进程间的通信
  • hadoop/hive/DBeaver启动流程
  • 1节18650锂电池的容量是多大,电流,电压是多大
  • 基于GA遗传算法的多机无源定位系统GDOP优化matlab仿真
  • Linux C语言:多级指针(void指针和const)
  • MicroPython+ESP32 C3开发上云
  • 动态 SQL
  • 功能强大的多功能文档转换工具Neevia Document Converter Pro 7.5.0.241
  • 从零到一,深入浅出大语言模型的奇妙世界
  • ESP8266发送WOL幻数据包实现电脑远程唤醒
  • 用一个ESP32S3-Zero把有线键盘变为无线