问题 #2771✓ 已解决提出于 2020年5月13日作者 antman335112 个反应

组件,带有textable:1,自0.16.12版本起无法工作

快速解答作者 artf6

我这里留下一个可文本组件的工作示例 https://jsfiddle.net/artur_arseniev/0b9ox72g/

阅读下方完整回答 ↓

问题

你好, 我刚刚更新到最新版本 0.16.12,尝试将带有 'textable:1' 属性的组件迁移到文本组件时遇到了 bug。

它在之前的版本 0.16.3 上运行。

当我移动组件时,控制台会报错 '未捕获类型错误:无法读取未定义属性'属性' - ComponentView.js:293'

我举了一个基本例子:https://codepen.io/antman3351/pen/pojZWLe

谢谢!

回答(3)

0099FF2021年2月1日

看起来是在9c24108dadf2ded39e8805b6c4a5f00c626c468b中首次出现的。 正如@antman3351指出的,'model.getView().render();' 调用是麻烦制造者。在调用栈的稍后端,我们尝试更新视图的属性,但当我们尝试访问时,“model”属性是“未定义”(https://github.com/artf/grapesjs/blob/dev/src/domcomponents/view/ComponentView.js#L299)。如果你在 [ComponentView.remove()](https://github.com/artf/gra...

bogdanbs2021年9月15日

我对此有两点建议。 问题在于异步和同步代码的混淆。 启用 rte: enable(view, rte) 以及 ComponentTextView.onActive 和 ComponentTextView.disableEditing 自问题 #3475 修复后,现已成为异步方法。 在排序器类中,富文本编辑器是同步激活的(第1133行) “''activeTextModel.trigger('active');' 但当activeRte实例在第1140行被访问时,尚未完全初始化: '''activeRte.insertHTML && activeRte.insertHTML(outerHTML...

相关问答

通过相似的问题讨论继续研究。

与此问题匹配的付费插件

根据问题关键词和标签相关性精选,助你更快交付。

查看全部插件

正在加载付费插件推荐……

免费方案

在以下平台查看开源 GrapesJS 插件: GitHub 或在我们的免费目录中快速搜索。

浏览免费插件 →
高级方案

高级插件提供支持、定期更新和生产就绪的功能——为你节省数天的集成工作。

浏览高级插件 →

相关教程

关于同一主题的深入指南。

全部教程 →

浏览插件分类

直接跳转到市场上的插件分类页面。