问题 #1255✓ 已解决提出于 2018年7月3日作者 jdodsoncollins2 个反应

:如何从自定义组件中设置编辑器的HTML内容?

快速解答作者 artf2

用这个“this.attributes.template = ...”,你对视图什么都不做,所以它就是空的。你必须更新模型,让视图能对变化做出反应。 例如, “''js 模型内部 用 init 代替初始化,这样你就能避免使用 'defaultType.model.prototype...' 初始化() { // ... 如果该组件没有子节点 如果 (!this.components().length) { this.components('<div ${attrsRow}> <div ${attrsCellAside}><p>Aside</p></div> <div ${attrsCellMain}><p>Main</p></di...

阅读下方完整回答 ↓

问题

我在Grapes编辑器中无法让自定义块+组件显示其模板HTML时遇到了困难。在导出的 HTML 中,标记和 CSS 按预期生成。 不过在编辑器里,块不会留下任何界面(不过根据导出的 html/css 它已经成功拖入了)。 我的问题是: 'toHtml' 方法的输出如何正确地应用到编辑器的 iframe? 根据我在其他地方看到的类似例子,似乎在其他情况下,它必须由块“内容”属性生成。不过,出于我这里省略的原因,我必须使用对象格式来表示“内容”,才能获得自定义组件提供的功能 代码: “阻挡” '''export default (editor, config = {}) => { const bm = 编辑器。BlockManager; bm.add('flex-columns', { 标签:“2列”, 内容:{ 类型:“列” }, }); 导出默认(编辑器,config = {}) => { const domc = 编辑。主导组件; const defaultType = domc.getType('default'); const defaultModel = defaultType.model; const defaultView = defaultType.view; domc.addType('columns', { model: defaultType.model.ex...

回答(3)

👍 最有帮助artf2018年7月11日

用这个“this.attributes.template = ...”,你对视图什么都不做,所以它就是空的。你必须更新模型,让视图能对变化做出反应。 例如, “''js 模型内部 用 init 代替初始化,这样你就能避免使用 'defaultType.model.prototype...' 初始化() { // ... 如果该组件没有子节点 如果 (!this.components().length) { this.components('<div ${attrsRow}> <div ${attrsCellAside}><p>Aside</p></div> <div ${attrsCellM...

no-response[bot]2018年7月21日

由于我们请求原作者提供更多信息未获回应,本期已自动关闭。仅凭当前期刊中的信息,我们没有足够的信息采取行动。如果您有答案或找到我们需要的答案,请随时联系我们,以便我们进一步调查。

相关问答

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

问题 #1696

特质首次出现在自定义组件的拖拽中

你好,artf,我创建了自定义组件并为它添加了特征,当拖动这个组件到编辑器并选择它时,设置特征是正常工作的。 问题是,当将同一个组件拖到旧组件后面到编辑器并选择设置特征时,默认特征(ID,标题)会只显示,这是我实现的代码 对于创建组件: this.editor.BlockMan...

3 个回答更新于 2020年4月15日

问题 #1162

:Handlebars 渲染模板中的可编辑组件

你好,我已经用葡萄大约有几天了。感谢你在这个项目上的精彩工作。我已经看过API文档(希望没漏掉这部分),也尝试了一些方法。基本上,我用 Grapes 加载已有的 .hbs(把手)文件,用户就可以编辑了。我看到之前有人问#938里如何整合车把,我照做了,最后得到了。 “JavaS...

3 个回答更新于 2019年9月17日

问题 #1888

在画布内添加自定义HTML

你好, 我用 Grapes 导出一个包含所有信息的自定义 json,而不是用 HTML 和 CSS。 为此,我解析存储在localStorage上的gpjs组件。 现在我需要自定义组件在Canvas中的渲染方式。 举个例子,我有一个输入组件,包含两个特征(标签和值),我想在画布...

3 个回答更新于 2020年4月2日

问题 #1121

<Tbody> 在里面<Table>

你好@artf, 我创建了一个新组件,地址是 'tagName = 'table''。当选择并点击我创建的工具栏选项时,会打开一个新的模态,用户提交后,应该会在该模块中添加一些内容。我使用的是 'editor.getSelected().get('components').ad...

3 个回答更新于 2019年9月17日

与此问题匹配的付费插件

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

查看全部插件

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

免费方案

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

浏览免费插件 →
高级方案

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

浏览高级插件 →

浏览插件分类

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