GrapesJS 问题

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

找到 3,464 个问题

#9982018年4月3日作者 tonygiang3 个回答
0 个反应

资产管理器上传图片时发送空请求

描述:GrapesJS 编辑器在 editor.html 文件中初始化如下: “localhost:9001”是运行PHP5的本地IIS服务器。“uploadimage.php”的内容如下: 由于从GrapesJS上传的图片预计会在“$FILES”数组中,每次请求到达该页面时,我都会将所有内容转储到日志文件中。“testlog.txt”文件总是 每次我都会上传一张图片,这个插件在“gjs-preset-newsletter”插件里,提示资产管理器正在向服务器发送空请求。我的php.ini已启用文件上传: 而且测试镜像文件远低于PHP的限制。具体来说,我用的是GitHubLogo.png在[这里](https://github.co...

artf

客户端呢?你是否正确看到上传请求(例如检查员的)?

no-response[bot]

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

lock[bot]

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

#9972018年4月3日作者 alimajed932 个回答
0 个反应

模态无法滚动

大家好, 我注意到如果屏幕大小小于模态高度,模态会被裁剪,用户无法滚动到模态底部,换句话说,模态的一部分会变得无法访问。 附图展示了图像块模态的裁剪方式(模态中有一小部分可滚动(图片列表),但这里我说的是整个模态) <img width=“1279” alt=“截图 2018-04-03 12:57 p3” src=“https://user-images.githubusercontent.com/28840780/38243126-378dc09c-373f-11e8-8347-d5f855ca7924.png”> 我认为整个模态应该在需要时可以滚动。 谢谢

artf

这种行为只是为演示版调整的(那里大小应该没问题),你可以用CSS轻松调整

lock[bot]

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

#9962018年4月3日作者 HarshOB3 个回答
1 个反应

通过特质生成的属性值

现在,假设我在特质值中写入了 new,但在属性 :items 中,我想在该值后加上像 item.text. 这样的前缀。因此,我的最终属性 :items 变成了 item.text.new。这可能吗? ![截图来自2018-04-03 12-52-00](https://user-images.githubusercontent.com/28950214/38235247-0c5d655e-373e-11e8-81cd-0cdad9eef9c3.png)

artf

我觉得就够了 “''js getValueForTarget: function() { 返回 'item.text' + this.model.get('value'); } ```

artf

你应该可以通过[自定义特质](https://github.com/artf/grapesjs/wiki/Traits#define-new-trait-type)来实现,比如:通过覆盖[“getValueForTarget”方法](https://github.com/artf/grapesjs/blob/dev/src/trait_manager/view/TraitView.js#L46)

HarshOB

我尝试创建自定义特质并覆盖某个方法,但没看到任何属性生成。请你看看这段代码,如果有错误能纠正我吗?当我在 traits 中写入数据时,它应该在 datatextfield 生成属性为 ':text=item.text.data'。 ![截图来自2018-04-12 10-21-21](https://user-images.githubusercontent.com/28950214/38657005-a504f80e-3e3b-11e8-9346-a6185ffef5a5...

#9952018年4月3日作者 sublimekaushik2 个回答
0 个反应

如何在特征上动态添加场

我是在申请开始时构建该特质。 所以请在侧边栏设置下下面这些字段 ![特质2](https://user-images.githubusercontent.com/16155284/38231587-cf1a764e-3730-11e8-98a2-08412b20283b.png) 现在我希望加载更多字段(下面图片中的“产品”和“产品图片”),同时还要加载之前加载的字段(“标志网址”、“重定向网址”)。 这两个字段(“产品”和“产品映像”)将通过一个API传输。我希望在点击该特定部分时加载这两个字段(“产品”和“产品图片”)。 ![特质3](https://user-images.githubusercontent.com/1615...

artf

就你而言,必须更新所有这些模型 'model.get('traits').add([{name: 'product'}, {...}])`

lock[bot]

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

#9942018年4月3日作者 crazyxhz3 个回答
3 个反应

如何确保只在顶层放下方块

比如,我有两个块 A 和 B,我想把它们丢到编辑器画布里。但有时后来掉落的阻挡反而变成了现有阻挡的子。那是A>B布局。但我想强制阻挡只能是兄弟姐妹的 level.eg。A+B 我该怎么做?也许是component:add事件?

crazyxhz

@anand-gopinath 酷~效果非常好。现在我发现了很多数据属性、使用情况...... 这是一个非常好的框架,但文档有点落后......

anand-gopinath

@crazyxhz :你可以通过在内容中添加数据属性 “data-gjs-droppable='.className'”,例如 [https://jsfiddle.net/wswvuvab/2/](URL)

lock[bot]

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

#9932018年4月3日作者 duccanh00223 个回答
0 个反应

用 remote storageManager 没有显示数据

你好,我有个问题: 当我复制粘贴邮件模板(http://www.charlesmudy.com/respmail/ - 我用的是 gjs-open-import-webpage 插件)。保存到数据库......一切都看得清楚。编辑: <img width=“1277” alt=“截图 2018-04-03 11:16 19” src=“https://user-images.githubusercontent.com/4942484/38228973-7cf40f60-3730-11e8-948e-f48dee3d26d6.png”>db 中的部分行: <img width=“1280” alt=“截图 2018-04-03 11...

artf

所以当你刷新页面时,加载请求会被发送,对吧? 试着从这些听众那里得到什么 “''js editor.on('storage:load', function(e) { console.log(“LOAD”,e); }) editor.on('storage:store', function(e) { console.log(“商店”,e); }) ```

duccanh0022

你好,谢谢回复。 终于,我找到了我的“虫子”。mysql数据库中的组件字段是文本类型,空间不足。我换成了LONGTEXT。一切看起来都还好。 再次感谢!

lock[bot]

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

#9922018年4月2日作者 vladbpython2 个回答
0 个反应

编辑器 触发器 点击 Fancybox

您好,我可以在编辑器的模板中显示所有隐藏(显示:无)div 吗?比如Fancybox,请帮帮我理解逻辑。

artf

例如,“编辑。DomComponents.getWrapper().find('.some-query').forEach(model => model.setStyle({display: ...}))`

lock[bot]

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

#9912018年4月1日作者 belal-azzam3 个回答
4 个反应

在图片元素中上传视频

嗨。我尝试用 Asset Manager 实现用图片元素上传视频,但在 updateTarget 回调中我想用视频标签替换 img 标签的步骤停了下来,我想知道有没有简单的实现方法? 提前感谢大家。 这是我代码中的一段摘录 “''js 变量资产 = []; VAR Editor = Grapesjs.init({ 身高:“100%”, 展示偏移集:1, noticeOnUnload: 0, 组成部分:“, 风格:“, 容器:“#gjs”, fromElement: true, 插件: ['GJS-preset-webpage'], pluginsOpts: { 'gjs-preset-webpage': {} }, 资产管理人:{...

usman-vqode

你可以通过资产管理功能直接添加到视频里...... 'this.editor.on('component:create', model => { if (model.get('type') === 'video') { this.editor.runCommand('open-assets', { 目标:模特 }); } });`

artf

你可以这样更新组件的标签名称 'model.set('tagName', 'new-tag')'

artf

@ecmascriptguru我更建议扩展视频组件并实现模态([类似ComponentImageView](https://github.com/artf/grapesjs/blob/dev/src/dom_components/view/ComponentImageView.js#L63-L76))

#9902018年4月1日作者 anand-gopinath2 个回答
0 个反应

如何监听事件以获取自定义组件的样式更新?

@artf @arthuralmeidap @nojacko 我有一个自定义组件,比如这样,代码看起来是 [https://jsfiddle.net/nganand/n97g7g43/](URL)。 ![婴儿声](https://user-images.githubusercontent.com/25955939/38173314-f37c8ef8-35d9-11e8-94cd-db9da5c4559e.png)当自定义组件的属性发生变化时(例如,样式填充/边距时),如何监听事件?比如 init() { this.listenTo(this.model, “component:styleUpdate:text-align”, th...

artf

组件属性使用 'this.listenTo(this.model, “change:prop-name” ...'通过“......attributes.align = “left”' 组件看不到你的更改,改用 'this.model.components().at(0).addAttributes({ align: 'left' })',你不需要更新/渲染元素。

lock[bot]

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

#9892018年3月29日作者 tommedema3 个回答
1 个反应

连续的跨度在葡萄编辑器中与普通窗口中显示空白的方式不同

我花了大半个下午试图调试这个问题。虽然我已经把它缩小成一个小且易于复现的测试用例,但我还没找到问题的根本原因。希望有人能帮忙。 请注意以下HTML模板: 如果你在浏览器中渲染,它会呈现为: <img width=“133” alt=“截图 2018-03-29 下午1:36 34” src=“https://user-images.githubusercontent.com/331833/38112278-47c661fe-3356-11e8-8186-d48791b01af7.png”> 注意“我们的解决方案”和“关于”之间的空白。 如果你使用完全相同的HTML和样式作为Grapes的模板,它将呈现为: <img width=“...

artf

是的,Tom,谢谢你,我觉得一个可配置的选项(比如“keepWhitespace”?!?)可能是个好办法

artf

这是因为节点在穿越过程中进行清理 https://github.com/artf/grapesjs/blob/dev/src/parser/model/ParserHtml.js#L155-L158

tommedema

谢谢@artf,明白了。我建议移除这个功能,或者至少让它可配置(默认为true以避免破坏更改)。你会接受永久居民吗?

浏览所有主题