问题 #2170💬 已回答提出于 2019年7月26日作者 inaLar1 个反应

自定义组件——如何将可编辑设置为 true。

快速解答作者 inaLar1

谢谢!我做过类似的事情,但你的情况没那么复杂。我之前绑定了其他活动,所以没法用它。现在我把它们拆下来了,我会按照你的建议去做。 关于“data-gjs-type”——我需要它,因为我创建的内容是存储的,重新加载时必须识别组件,才能加载它们的设置/特性,尤其是我添加的这个自定义类型组件。你也可以通过特质改变内容,这会让事情变得复杂:) 附言:@artf 你做得非常出色!

阅读下方完整回答 ↓

问题

你好,我创建了一个自定义组件类型,但在让它可编辑时遇到了一些困难。 该组件是一个带有组件类型“标签”的“span”。它只包含文本,但我想扩展默认部分,而不是文本组件。有没有什么办法能让它更可编辑,即使它不是“文本”? “''js comps.addType('tag', { 型号:{ 默认值:{ 类型:“标签”, 标签名称:“span”, 可编辑:正确, 可掉落:错误, 属性:{ 'data-gjs-type': 'tag', }, 可文本:1, 特质:[{ 类型:“选择”, 标签:“Tag”, 名称:“Selected-Tag”, 选项:tagTypes, }], }, isComponent: function(el) { 令结果; if (el.tagName == 'SPAN' & el.getAttribute(“data-gjs-type”) === “tag”) { 结果 = { 类型:“标签”, }; } 返回结果; } }, ... ```

回答(3)

inaLar2019年8月8日

谢谢!我做过类似的事情,但你的情况没那么复杂。我之前绑定了其他活动,所以没法用它。现在我把它们拆下来了,我会按照你的建议去做。 关于“data-gjs-type”——我需要它,因为我创建的内容是存储的,重新加载时必须识别组件,才能加载它们的设置/特性,尤其是我添加的这个自定义类型组件。你也可以通过特质改变内容,这会让事情变得复杂:) 附言:@artf 你做得非常出色!

zgover2019年7月26日

如果你不打算扩展文本组件类型,你想让它可编辑,你的意图和目标是什么?文本组件类型扩展了默认类型,并增加了如富文本编辑器等编辑功能。你打算自己实施RTE吗?[富文本编辑器 API](https://grapesjs.com/docs/api/rich_text_editor.html#richtexteditor)。否则,可以查看文本组件类型的源代码,找出你不想要的部分,然后把你想要的部分重新实现到你自己的组件里。

inaLar2019年7月29日

我更倾向于不使用 RTE,因为我不需要它的任何功能。我只想编辑内容并保存(编辑是指点击跨度,修改文本然后再次保存)。 而且新类型会有特定的特征,选择后会被添加到画布上。

如果我想用字体中的某个组件,我不会问:)

谢谢你建议我更仔细地研究文本部分——我会的。

相关问答

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

问题 #3409

自定义组件属性,但不是特质

我想创建一个带有属性的自定义组件,该属性会被特定代码更新,但我不希望这个属性作为特性可见且可更新;假设我的属性叫“ebTesto”,我写了一个插件函数: 我本以为会在存储的 JSON 的“gjs-components”部分找到新属性,但结果是这样的: 也许我尝试的方式错了? 有...

4 个回答更新于 2021年4月23日

问题 #3025

使内部元素不可通过传播移动

你好,创建一个组件/方块,我们希望内部的元素不被移除、编辑或移动: 没有被移除也没有编辑,好吗?但怎么才能让它们变得不可移动? 谢谢! $.get( “/iscrizionePrivacy.plp?a=VGsflaU2d7D0sUcDhl7lCkkX8tE1UW9kBzLcqc...

3 个回答更新于 2020年9月23日

问题 #2614

自定义组件的递归视图更新

你好, 我定义了一个自定义类型,比如: “JavaScript 编辑。DomComponents.addType('customType', { 型号:{ 默认值:{ 类型:'customType', 标签名称:'customTag', 可文本:1, 可拖拽:正确, 可拖拽:[...

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

问题 #459

在另一个模块中包含自定义组件时出现错误

抱歉标题有点模糊。我不太确定如何简洁地描述这件事。我有一个自定义块,想限制只有图片可以丢进块的某个部分。我尝试过类似这样的方法: 然而,当我这样做时,尝试将方块从方块调色板中拖出时,会出现以下错误: ... grapes.min.js:2 未捕获类型错误:s 不是构造函数 at...

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

与此问题匹配的付费插件

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

查看全部插件

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

免费方案

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

浏览免费插件 →
高级方案

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

浏览高级插件 →

浏览插件分类

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