CKEditor 仅在生产服务器上崩溃(未捕获类型错误:无法读取未定义的属性(读取“工具栏”))

问题描述 投票:0回答:1

我嵌入 Rails 应用程序的 CKEditor(版本“4.10.0”)突然停止工作。
该错误仅出现在我的生产服务器上,它在我的本地开发环境中运行良好,因此很难调试。

控制台显示的错误是:

未捕获类型错误:无法读取未定义的属性(读取“工具栏”)

对应的代码如下所示:

e.plugins.wsc && (i.WSC = {
                    label: e.lang.wsc.toolbar,   // <=== 'wsc' is undefined
                    group: "scaytButton",
                    onClick: function() {
                        var t = CKEDITOR.plugins.scayt
                          , n = e.scayt
                          , i = e.elementMode == CKEDITOR.ELEMENT_MODE_INLINE ? e.container.getText() : e.document.getBody().getText();
                        (i = i.replace(/\s/g, "")) ? (n && t.state.scayt[e.name] && n.setMarkupPaused && n.setMarkupPaused(!0),
                        e.lockSelection(),
                        e.execCommand("checkspell")) : alert("Nothing to check!")
                    }
                }),

属性“wsc”确实在服务器上未定义,但在本地定义良好。

从我的调试来看,它似乎发生在加载“scayt”插件期间。
因为无论如何我都不需要该插件,所以我尝试通过将以下内容添加到 config.js 来禁用它:

config.removePlugins = 'scayt';

...但无济于事。代码仍然被执行。

我可以做什么来解决这个问题?像以某种方式去除scayt这样的务实措施是非常受欢迎的。我只需要这个快速恢复工作。

javascript ruby-on-rails ckeditor scayt
1个回答
0
投票

当我也删除

wsc
时它会起作用:

config.removePlugins = 'scayt,wsc'
© www.soinside.com 2019 - 2024. All rights reserved.