由于某种原因运行capybara测试时,CKEditor不会在浏览器中呈现。在开发和生产模式 - 一切都很好。 CKEditor是预编译的,同时存在CKEDITOR_BASEPATH
的init部分。页面上使用的所有其他js东西都能正常工作。
我在我的应用中使用了这个宝石 - https://github.com/galetahub/ckeditor
CKEDITOR.replace('editor1')
,当我从控制台运行它时,也隐藏了原始textarea,但是没有显示编辑器(我在textarea的地方只得到空白空间)。浏览器的控制台没有错误。
更新
我使用sinon
(https://github.com/travisjeffery/sinon-rails)设置假时间:
window.clock = sinon.useFakeTimers(<%= Time.now.to_i * 1000 %>)
当我删除此代码时 - CKEditor正常工作,但需要此代码才能使js和ruby时间相同。如何在不删除sinon的情况下使CKEditor正常工作?
答案 0 :(得分:3)
这种情况正在发生,因为你可能在某处暂停了javascript执行,因此没有加载编辑器
你正在使用sinon进行一些使用,它使用延迟,所以你应该在开始渲染ckeditor之前使用sinon,或者在渲染ckeditor之后使用sinon