依赖:主干撤销已弃用(NPM)——有什么替代方案吗?
安装GrapesJS时对[email protected]的弃用警告是关于依赖维护的一个合理担忧。让我们来分析一下情况及其对GrapesJS用户的影响。 根本原因:弃用依赖 GrapesJS 目前利用 backbone-undo 作为其核心的撤销/重做功能。该库提供了管理编辑器内更改历史的底层机制,允许用户回退或重新应用操作。backbone-undo包本身在 npm 上被标记为弃用,安装时会触发警告。 影响与风险评估 虽然弃用警告通常应被认真对待,但backbone-undo弃用对GrapesJS的直接影响相对较低,原因如下: 稳定性:backbone-undo 是一个成熟的客户端库,执行特定且定义明确的任务。其核心功能稳定...
阅读下方完整回答 ↓问题
GrapesJS版本
0.22.14(最新版本截至2025-11-20)
预期的行为是什么?
GrapesJS 安装树中没有弃用依赖(或替换指南/路线图)。
现在的行为如何?
安装[email protected]会发出npm/pnpm弃用警告,因为它依赖于[email protected](在npm上弃用)。
繁殖步骤
- PNPM [email protected](或 NPM I [email protected])
- 注意主干网[email protected]的弃用警告
补充背景
- 这本身不是漏洞报告;这是维护/支持风险(供应链问题)。
- 相关历史问题:#3443 涉及下划线咨询路径;本报告专门讨论软件包弃用状态。
- 问题:是否有计划移除或替换骨干撤销,还是消费者应视为“无法修复”,忽略警告?
回答(1)
安装GrapesJS时对[email protected]的弃用警告是关于依赖维护的一个合理担忧。让我们来分析一下情况及其对GrapesJS用户的影响。 根本原因:弃用依赖 GrapesJS 目前利用 backbone-undo 作为其核心的撤销/重做功能。该库提供了管理编辑器内更改历史的底层机制,允许用户回退或重新应用操作。backbone-undo包本身在 npm 上被标记为弃用,安装时会触发警告。 影响与风险评估 虽然弃用警告通常应被认真对待,但backbone-undo弃用对GrapesJS的直接影响相对较低,原因如下: 稳定性:backbone-undo 是一个成熟的客户端库,...
相关问答
通过相似的问题讨论继续研究。
问题 #3443
Backbone-undo/underscore security advisory
版本: v0.17.3 你能重现演示中的bug吗?[x] 是的[ ] 不 预期的行为是什么? 见下文 目前的行为是什么? 嵌套依赖使用的某个underscore版本存在已知的安全漏洞。 当前版本的grapejs利用了backbone-undo ^0.2.5 https://gi...
问题 #3332
近一半的软件包都存在高风险漏洞,且都存在一定的漏洞。
NPM之后,我们可以看到漏洞的程度是不可接受的。 新增了来自383位贡献者的646个包,并在7.892秒内审核了762个包 发现了724个漏洞(353个低点,23个中等,348个高) 运行“NPM Audit Fix”来修复这些问题,或者使用“NPM Audit”获取详细信息...
问题 #6723
依赖性:grapesjs >=0.21.13 依赖于易受攻击的下划线版本
GrapesJS 版本 [x] 我确认使用最新版本 GrapesJS 你用的是什么浏览器? Edge,mozilla 可复制演示链接 匿名 描述一下那个虫子 下拍<=1.13.7 严重程度:高 下拍<=1.13.7 严重程度:高 Underscore在.flatten和.isE...
问题 #3639
Improve UndoManager API
我认为一个更详细的历史堆栈会带来很棒的功能。你可以拿到撤销堆栈,然后从中建立一个记录所有编辑的历史报告,但对我来说每次编辑具体是什么不太清楚(至少对我来说是这样,如果我遗漏了什么,请告诉我)。比如用公式化描述,比如组件[组件名称]在[页面位置或组件添加]处添加/删除/编辑,或者...
与此问题匹配的付费插件
根据问题关键词和标签相关性精选,助你更快交付。
正在加载付费插件推荐……
相关教程
关于同一主题的深入指南。
教程
PageKit:你无论如何都得自己开发 GrapesJS 应用
一个围绕开源GrapesJS核心的源代码可用Next.js应用——发布、自定义域名、潜在客户、结账和插件加载器。
教程
Lighthouse for GrapesJS:无需离开编辑器即可访问审计和SEO。
Live WCAG 2.1/2.2 无障碍审计员 + GrapesJS 的 SEO 经理。每个发现都绑定在具体组件上——点击选择,然后一键修复。
教程
GrapesJS DevTools:编辑器内的开发者面板
如果你曾经用console.log(editor.getSelected())和十几个一次性事件听众调试过GrapesJS——这篇文章就是为你准备的。
浏览插件分类
直接跳转到市场上的插件分类页面。