#20542019年5月31日作者 zhangyanwei暂无回答
对于某些预定义命令,有新名和旧名。它告诉用户按偏好使用新的。 如果选择新的命令名来扩展,也无法正常工作,那是因为内部有旧的名称。 原因是:在“commands/index.js”中,新增或扩展的命令是新创建的视图(从“CommandAbstract”延伸而来)。 这是我的代码片段,如果“defaultCommand”选项值是“select-comp”,它就不行了 “JavaScript const 命令 = 编辑器。Commands.get('core:component-select') 编辑。Commands.extend('core:component-select', { 覆盖这个私有方法,使工具栏有条件显示。 updat...
#20532019年5月31日作者 megarg2 个回答
我尝试添加“自定义代码插件”,但在控制台上出现错误 “插件 grapesjs-custom-code 未找到”我创建了一个 React 应用,这是 Reach 组件的一部分。 注意,当我从HTML页面添加插件而不是React组件时,这个功能正常。这个问题仅发生在“grapesjs-custom-code”上。 “gjs-preset-webpage” 运行正常 可能是我在 react 组件里做错了什么,或者有个 bug。我已经试了好几个小时想弄明白这个问题,现在需要一些帮助。 以下是我的React组件代码 import React, { Component } from 'react'; 导入 'Grapesjs/Dist/CSS...
artf
你好@megarg实际上新插件(“预设”尚未更新)使用了一个新的导出格式,这使得导入“import 'grapesjs-custom-code”无法使用。你可以在这里看到新插件的使用示例[这里](https://github.com/artf/grapesjs-plugin-boilerplate#usage-1)
megarg
让我再详细说明一些细节: -----配置----- $ 节点 -v v10.15.3 $ NPX 节点-萨斯 -v node-sass 4.12.0(封装器)[JavaScript] libsass 3.5.4(Sass 编译器)[C/C++] 操作系统是:Windows 10 非常感谢任何关于这个插件为什么会出现这个错误的建议。
#20522019年5月31日作者 tsuwunrut-carecloud1 个回答
我有一个关于合并字段的问题,类似于 https://github.com/artf/grapesjs/issues/481。我正在尝试让合并字段图标按钮通过输入下拉切换模态,然后在下拉菜单中选择一个选项后,合并字段会自动插入。 ^ 我有类似的观点。点击图标按钮只是把一个函数存储在我选择输入下拉菜单后调用的窗口对象里。这实际上运行得非常好,除了一个问题。如果我在文本区域最末端多次按“回车”,并试图在最底部添加合并字段,它反而会把合并字段加到文本字段的开头。 我认为这是因为当我按下“回车”时,范围对象会失去所有偏移。但如果是这样,简单调用 'rte.insertHTML()' 在图标内置的事件处理程序中是如何工作的? 有没有办法复制'...
artf
一般来说,为了避免元素点击丢失选择,你会用“event.preventDefault()”,所以可能也是你的情况,但我不太确定。至少试着做一个可复现的演示,顺便说一句,我已经关闭了这个问题,因为这和核心本身无关
#20512019年5月30日作者 alikabeer322 个回答
我希望p标签应该始终有0边距。我该怎么做?原因是ckeditor把文本包裹在p标签上,而p标签有边距,导致整体难看。
artf
你可以把所有想要的样式传递到初始模板里 “''js const editor = Grapesjs.init({ 容器:“#gjs”, components: '<div class=“txt-red”>你好,世界!</div><p>文本“,</p> 样式:'.txt-red{color: red} p {margin: 0}', }); ```
#20502019年5月30日作者 jitendra16071 个回答
从“https://grapesjs.com/demo.html”导出的代码并不像构建器里那样响应。
jitendra1607
请做这个实验。在编辑器里放一个导航栏。现在点击预览,打开Chrome开发工具,将设备大小改为移动端。你会看到导航栏菜单项,比如桌面图标而不是汉堡图标。 https://grapesjs.com/demo.html
#20492019年5月30日作者 benvmatheson3 个回答
一旦编辑器创建了HTML/CSS,我们就把它交给另一段代码。这段代码依赖于使用预设类名的类来对 HTML 执行操作。(将占位符替换为实际数据等)如果该类被添加到某个元素中,点击该元素后,它会尝试为该类添加样式。有没有可能让编辑者忽略某个类?
artf
你可以把一个监听器放在新的选择器上 “''js editor.on('selector:add', selector => { const name = selector.get('name'); 如果 (someConditionForSelectors(name)) { Selector.set({ 样式管理器看不到,因此用户也看不到 列兵:确实如此, }) } }); ```
artf
你说的“忽视”是什么意思?忽视哪里?是风格管理器里有空还是别的什么?
benvmatheson
抱歉,我刚才说得不清楚。点击元素/方块并进行样式时,默认选择了该类。这个职业能否默认取消选择,并隐藏在“职业”字段中? 
#20482019年5月30日作者 kwayebopp1 个回答
嗨!首先,我要感谢@artf打造了如此精美的库。我刚开始在项目中使用它,设置起来非常简单。 我正在用 ['grapesjs' 和 ['grapesjs-preset-webpage'](https://github.com/artf/grapesjs-preset-webpage) 插件一起构建一个 React 应用。我一直在尝试模仿像[演示](https://grapesjs.com/demo.html)里的网页,发现有很多“Box”组件被使用。我本以为会在方块菜单里找到“盒子”,但找不到。令我惊讶的是,演示菜单里也没有“盒子”!那么“Box”元素是从哪里来的?我该如何把它添加到我的方块菜单中? 提前感谢大家的帮助!
artf
顺便说一句,@kwayebopp默认组件用的是“Box”标签,没什么特别的(写的时候“Box”比“Div”更让人舒服)。
#20472019年5月30日作者 alikabeer321 个回答
我可以用 Appendto 把所有积木移动到任何地方,但具体该如何移动某个特定类别的积木呢?我需要它们单独出现。
alikabeer32
Nvm 找到了解 请这样定义你的范畴 blockManager.get('myblock').set('category', 'customdefinedcategory'); 然后 const blocks = blockManager.getAll(); const filtered = blocks.filter(block => block.get('category') == 'customdefined_category') const newBlocksEl...
#20462019年5月29日作者 sdrebel3 个回答
你好@artf, 我需要在编辑器里禁用所有脚本(组件脚本和其他脚本),脚本应该只有在点击“预览按钮”时才会运行。 有什么方法可以做到吗?
sdrebel
你好@artf, 谢谢你的回复。现在我正在移除所有脚本,只在预览模式下运行。
mariasmol
你好@sdrebel如果你能分享你的解决方案,我会很感激。 另外,在编辑器允许脚本后,我复制了这个示例导入  按下导入键,看到了Hello World。 但是 使用预览模式时我看不到提醒。 我需要配置什么才能在预览模式下执行脚本吗? 我下一步想让编辑器不要执行JS...
#20442019年5月29日作者 eduardonunesp3 个回答
按照 README 上描述的 'dev' 分支启动本地服务器的步骤,在控制台上能用,但在 Chrome 上失败,Grapesjs 也无法加载,因为以下错误 
artf
奇怪,以前从没见过。可能是某个小版本中开发依赖的变化。试着用完全相同的依赖版本重新安装node_modules
verdverm
我在跟随开发者设置时遇到了一些问题: 可能是捆绑器的问题? 我能在“index.html”文件里把“grapes.min.js”里的“最小”去掉,这样就能正常工作了。但是,如果我构建“grapes.js”输出,这个错误又会出现。