如何禁用样式编辑器
How to disable style editor
我正在试验 grapes js page builder with the webpage 插件。
问题是我无法找到一种方法来完全禁用他们拥有的样式编辑器(当您单击一个元素时,我设法不自动 select 样式管理器)但我想完全删除用户编辑现有样式的选项。
基本上,用户只能拖动现有块并编辑其中的文本,不能以任何方式设置它们的样式。
我解决这个问题的方法是复制并粘贴 node_modules/grapesjs-preset-webpage/src/panels/index.js
并简单地注释掉定义我想删除的面板的代码。
我还复制并粘贴了 node_modules/grapesjs-preset-webpage/src/index.js
并编辑它以导入我的 panels.js 文件。
这肯定不是最好的方法,但现在就可以了。
PS。
我还想过使用 CSS 简单地隐藏面板,但这似乎比这更像是一个 hack。
您还可以通过将样式管理器配置的“appendTo”属性 更改为不在 DOM
中的新 div 来实现此目的
const editor = grapesjs.init({
styleManager: {
appendTo: document.createElement('div'),
},
...
})
这样,样式管理器就不会被渲染。
我正在试验 grapes js page builder with the webpage 插件。
问题是我无法找到一种方法来完全禁用他们拥有的样式编辑器(当您单击一个元素时,我设法不自动 select 样式管理器)但我想完全删除用户编辑现有样式的选项。
基本上,用户只能拖动现有块并编辑其中的文本,不能以任何方式设置它们的样式。
我解决这个问题的方法是复制并粘贴 node_modules/grapesjs-preset-webpage/src/panels/index.js
并简单地注释掉定义我想删除的面板的代码。
我还复制并粘贴了 node_modules/grapesjs-preset-webpage/src/index.js
并编辑它以导入我的 panels.js 文件。
这肯定不是最好的方法,但现在就可以了。
PS。 我还想过使用 CSS 简单地隐藏面板,但这似乎比这更像是一个 hack。
您还可以通过将样式管理器配置的“appendTo”属性 更改为不在 DOM
中的新 div 来实现此目的const editor = grapesjs.init({
styleManager: {
appendTo: document.createElement('div'),
},
...
})
这样,样式管理器就不会被渲染。