dgmjs v0.37.0版本发布:增强图形约束与修复关键问题
项目简介
dgmjs是一个专注于图形编辑和可视化的JavaScript库,它提供了强大的图形操作能力和灵活的约束系统。该库特别适合需要构建复杂图形编辑界面的应用场景,如图表设计、流程图工具等。dgmjs通过其核心模块@dgmjs/core提供了丰富的图形操作API和约束机制,使开发者能够轻松实现各种图形交互功能。
新功能解析
增强的图形约束系统
在v0.37.0版本中,dgmjs团队对图形约束系统进行了重要增强,主要体现在以下几个方面:
-
父级移动过滤功能
新增了movableParentFilter参数,允许开发者在图形移动时对可移动的父级元素进行过滤。这一特性特别适用于嵌套图形结构,当子图形移动时,可以精确控制哪些父级图形可以随之移动。例如,在一个包含多个嵌套组的复杂图形中,开发者可以指定只有特定层级的父组才会被子图形的移动所带动。 -
继承样式约束查询
新增了对继承样式约束的查询功能,使得开发者能够更方便地获取和管理图形间的样式继承关系。这一功能强化了样式系统的灵活性,特别是在需要维护复杂图形样式一致性的场景下尤为有用。 -
对齐父级约束查询
新增了对齐父级约束的查询能力,简化了图形与父级对齐状态的管理。通过这一功能,开发者可以轻松检查图形是否设置了与父级的对齐约束,以及具体的对齐方式,大大提升了开发效率。
问题修复与改进
图形移动行为优化
-
多选情况下的父级移动问题
修复了在多选情况下父级可移动图形无法正常工作的问题。此前版本中,当用户同时选择多个具有可移动父级的图形时,移动操作可能无法正确应用。新版本确保了在多选场景下,所有选中图形的父级移动行为都能按预期工作。 -
页面作为父级时的移动处理
改进了当页面(Page)作为父级时的移动逻辑。现在,即使图形的movable属性设置为"parent",当父级是页面时,图形仍然可以自由移动。这一改进使得页面作为顶级容器时的行为更加符合用户直觉。
文本渲染修复
修复了有序列表中数字显示错误的问题。在某些情况下,当有序列表项以"2."开始时,系统会错误地渲染为"1."。这一修复确保了文本内容中数字序号的正确显示,提升了文本编辑的准确性。
技术影响与应用建议
本次更新主要针对图形约束系统和移动行为进行了优化,对于构建复杂图形编辑应用的开发者具有重要意义:
-
复杂图形结构管理
新增的父级移动过滤功能使得管理多层嵌套图形结构变得更加灵活。开发者现在可以精确控制图形层级间的联动关系,实现更精细的交互设计。 -
约束系统可观测性
新增的约束查询功能大大提升了约束系统的可观测性,使开发者能够更方便地调试和验证图形间的约束关系。 -
多选操作体验
多选情况下父级移动问题的修复,提升了用户在进行批量操作时的体验流畅度。
对于正在使用或考虑采用dgmjs的开发者,建议:
- 充分利用新增的约束查询功能来构建更健壮的图形编辑逻辑
- 在实现复杂嵌套图形时,合理使用
movableParentFilter来控制图形间的联动关系 - 升级后检查现有应用中是否存在多选移动场景,确保行为符合预期
dgmjs v0.37.0通过这些改进,进一步巩固了其作为专业图形编辑库的地位,为开发者提供了更强大、更稳定的图形操作能力。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0148- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
GLM-5.1GLM-5.1是智谱迄今最智能的旗舰模型,也是目前全球最强的开源模型。GLM-5.1大大提高了代码能力,在完成长程任务方面提升尤为显著。和此前分钟级交互的模型不同,它能够在一次任务中独立、持续工作超过8小时,期间自主规划、执行、自我进化,最终交付完整的工程级成果。Jinja00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0111