GrapesJS 问题

已收录 3,464 个 GitHub 问题 370 个已解决 · 90 个待解决 搜索、筛选并探索经过实战检验的答案。

找到 3,464 个问题

#5192017年11月14日作者 enricribas3 个回答
0 个反应

默认情况下没有任何阻挡

使用这段代码 我用编辑器,但没有任何区块。我也没能理解屏幕尺寸的图标,但其他图标是有的。正如你所见,CSS 正在加载,因为整体布局是正确的。 ![图片](https://user-images.githubusercontent.com/438493/32779136-9e796aac-c90a-11e7-8ee5-59c5bca55f35.png) 我到底漏掉了什么。我用的是Vue,但觉得没什么区别,因为我只是在挂载回调中运行代码。

ryandeba

@enricribas 据我所知,Grapesjs 的核心里没有内置默认的方块,不过有一些插件可以帮你添加一些方块。可以看看 https://github.com/artf/grapesjs-blocks-basic。 我记得“屏幕尺寸”图标已经被左上角的“设备”选择取代了。你可以考虑一下通讯预设插件怎么把这些按钮转换回按钮——https://github.com/artf/grapesjs-preset-newsletter

enricribas

明白了,谢谢你。说明文件似乎暗示开箱即用,设置更完善,但我猜现在已经转移到插件系统上了,这挺不错的。 谢谢。

lock[bot]

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

#5182017年11月14日作者 HarshOB3 个回答
0 个反应

只更改组件正文,不要更改整页正文。

你好@artf 正如我们在第[#374](https://github.com/artf/grapesjs/issues/374 期)中讨论的。 setComponents 将设置正体,并将页面上所有内容替换为列表中的新选择页。如果我想只把正文设置为那个组件,但又不想改变整个页面内容怎么办?

artf

你可以替换模型的内容 “''js 例如,模型可以是 editor.getSelected() model.components('<div>Text 1</div><div>Text 2</div>') ```

HarshOB

我怎样才能用像“Hello”这样特定值替换组件的内容?

artf

尝试过这个“model.components('Hello')”?!?

#5162017年11月13日作者 ateshuseyin3 个回答
0 个反应

如何将设置面板嵌入样式管理器面板。

在 grapesjs.com/demo.html 设置面板中嵌入了样式管理器面板。我也想要同样的东西,但想不明白怎么可能。

ateshuseyin

我在grapesjs-preset-webpage.js里找到了它。我觉得这应该成为一个功能。 问题暂时可以结案。

artf

当然@ateshuseyin面板的UI管理API很快会重构,我会在模块上添加“appendTo”选项,指示面板应该渲染的位置

lock[bot]

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

#5142017年11月13日作者 krunal0392 个回答
0 个反应

模板/方块/组件

我们要求为不同区域创建自定义模板,而所有模板的变量都少于4 锚点链接,锚点目标,图片源,图片悬停文本,标题。我们想创建一个自定义组件,它将提供通过特征选择变量的机制。有没有办法通过模块提供模板,然后用自定义组件来使用,而不是在组件里生成模板? 我们想把组件和块解耦,这样块会提供模板(即附图),组件用用户选择的值替换占位符? ![捕获](https://user-images.githubusercontent.com/11716808/32724852-cd10682a-c86a-11e7-8579-b9ede4e12a21.PNG)

artf

嗯,有了 'data-gjs-*' 属性,你甚至可以使用对象(JSON) “''js 内容: '<div class=“cls” data-gjs-attrobj='{“valid”:“json”}'></div>',

lock[bot]

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

#5132017年11月13日作者 krunal0393 个回答
0 个反应

模型及返回的HTML问题

我下面有代码可以创建自定义组件,想通过editor.html()获取更新后的html,但返回错误的html,我确定我又漏掉了什么。 我们需要返回下面的模板 [482](https://github.com/artf/grapesjs/issues/482) 代码中心:[模板](http://codepen.io/kmpdev/full/LORdOM/) 'function createPCBoxComp(comps, defaultModel, defaultView) { comps.addType('pcBox', { 定义模型 model: defaultModel.extend({ 扩展默认属性 defaults: Obj...

artf

@krunal039 这不是问题,只是你定义自定义类型的方式。如果你在“div”上定义性状,你会在那里得到。如果你需要更新某个嵌套组件,你总可以直接从组件本身访问 “''js const linkModel = model.components().at(0); ... ```

krunal039

@artf谢谢回复,如果你能推荐一些样品,可以吗?

lock[bot]

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

#5112017年11月13日作者 bungambohlah3 个回答
2 个反应

通过块管理器 API 更新内容后无法编辑

你好,抱歉@artf我之前的问题,我必须创建一个新问题,我的问题是这样的错误 编辑:抱歉,我刚刚修复了脚本上的问题: “JavaScript 动态导航 blockManager.add('dynamic-nav', { 标签:“动态导航”, 属性:{ 类别:“Fa fa-省略号-h”, 标题:“插入导航动态菜单” }, 分类:“分区”, 内容: '<div id=“dynamic-nav-wrapper” class=“nav-wrapper” data-section-type=“dynamic-menu-nav”> <a href=“index.html” class=“brand-logo”><img src=“images...

artf

@edwardjiawei只需将“内容”(仅用于文本内容)改成“组件” “''js 来自 内容: '<TD class=“cell”>...', 到 组件: '<TD 类=“cell”>...', ``` @bungambohlah 你不应该这样做 'el.insertAdjacentHTML('beforeend', contentDynamic );' 如果你更换了DOM,也要拆掉它附带的“型号” 如果你需要替换DOM,还能选择新内容,你必须在模型层面操作(例如“mod...

bungambohlah

非常感谢@artf我有了点想法,也不太清楚模型关卡该怎么做,非常感谢,你救了我一命 :rofl:

edwardjiawei

类似的问题,嵌套元素无法检测到 设置简单的拖放表格流程,用户可以拖动行块来做第二行的表格,但该行的 td 不可编辑,也无法选择样式 ``` bm.add('Table', { 标签:“桌子”, 类别:“形式”, 属性:{class:'fa fa-map-o'}, 内容:{ 类型:“表格”, 风格:{宽度:'100%'}, 列数:2列, 行数:1行, }, }); } bm.add('TableRow', { 标签:“TableRow”, 类别:“形式”, 属性:{class...

#5102017年11月12日作者 asvine-p3 个回答
6 个反应

程序化添加新职业

你好,Artf, 我想编辑组件的样式(主要是导入的 html),但不修改同类的所有组件。我尝试用程序方式添加一个随机命名的类,比如这样: this.editor.on('component:selected', function(model) { 如果 (model & & model.length > 2) { const uuid = this.s4();生成新的随机类名称 const 选择器 = { 名称:UUID, 类型:“类”, 标签:UUID, }; model[1].attributes.classes.push(selectorManager.get(uuid)); 令 mClasees = model[1].at...

artf

@wemod123 'editor.getWrapper().addClass('my-class')'

artf

@IrinaCodixis https://github.com/artf/grapesjs/releases/tag/v0.14.52 我们添加了 ['setRule'](https://grapesjs.com/docs/api/csscomposer.html#setrule)/['getRule'](https://grapesjs.com/docs/api/csscomposer.html#setrule)方法,所以如果要编程添加一些 CSS 规则,你应该这样做:...

artf

你是说像'model.set('style', {...})`?这会在组件上添加内联样式

#5092017年11月12日作者 asvine-p3 个回答
0 个反应

跨度不能作为文本编辑

你好,Artf, 我在导入一些HTML模板时遇到了问题。起初我无法看到跨度文本。但在帮编辑重新整理后,我无法将它们作为文本进行编辑。 ' 让 domc = this.editor.DomComponents; 让textType = domc.getType(“text”); domc.addType('span', { 定义模型 model: textType.model.extend({}, { isComponent(el) { 如果 (el.tagName === 'SPAN') { 返回 {类型:“Span”, SRC代码:El.src, 标签名称:el.tagName.toLowerCase(), components...

artf

对于可编辑内容,你必须使用“content”。 “''js ... 内容:el.innerHTML ... ```

asvine-p

你好,artf,我已经把“components: el.innerHTML”替换成了“content: el.innerHTML”,但内容仍然无法编辑。这是我的代码: ' 令 domc = this.editor.DomComponents; let textType = domc.getType(“text”);' domc.addType('span', { 定义模型 model: textType.model.extend({}, { isComponent(el)...

bakgat

``` 返回 {类型:“Span”, SRC代码:El.src, 标签名称:el.tagName.toLowerCase(), 组件:el.innerHTML, 内容:el.innerHTML, 可编辑:真实 }

#5082017年11月12日作者 roytang2 个回答
0 个反应

如果你添加了复选框特性,除非有文本特性,否则它在设置面板中不会正确显示

一个文本特征和一个复选框: 结果如下: ![图片](https://user-images.githubusercontent.com/4228/32700288-c2e2e976-c7fd-11e7-8b47-ae51a9f7651d.png) 如果只勾选: 复选框与标签重叠: ![图片](https://user-images.githubusercontent.com/4228/32700304-e6455f98-c7fd-11e7-8e8a-3e89b24cb5f4.png)

artf

应该能修复

lock[bot]

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

#5072017年11月12日作者 roytang3 个回答
0 个反应

上传文件在丢弃文件上被调用了两次?

我有一个编辑器,初始化如下: 如果我把图片添加到画布,然后试图通过拖拽到模态的投放区域上传新图片,uploadFile函数会被调用两次。点击上传区域,然后从Windows对话框中选择文件上传,效果很好,它只调用该函数一次。

artf

@roytang我无法用当前版本复现 https://codesandbox.io/s/p554z8yv7j

duskhacker

@roytang 明确禁用全宽编辑器下达区(“dropzone: 0”)后,这个问题就解决了。使用版本“0.12.30”

kickbk

我也遇到同样的情况,@roytang的评论是真的,禁用掉落区能解决这个问题。当然,我总是用最新版本。

浏览所有主题