PageKit — 可自托管的 GrapesJS 建站工具,附完整源码。 获取抢先体验

问题 #959💬 已回答提出于 2018年3月16日作者 tommedema1 个反应

由于竞态条件,'开发'分支间歇性测试失败

快速解答作者 tommedema❤ 1

我有一阵子没见过这个了。暂时关闭。

阅读下方完整回答 ↓

问题

我建议在package.json的 test 中添加mocha --bail ,这样更容易看清,例如: 在最新的dev分支中,只需多次运行npm test即可轻松复现: 迟早你会得到: 如果你.skiptest/specs/selector_manager/e2e/ClassManager.js第74行的这个测试,这个问题似乎会消失: 当然,这不是解决方案。但它可能说明了根本问题所在。看起来像是某种竞速状态。 如果你评论活动听众,也会取消editor/model/Editor.js: 也许模块还没完全加载,已经有变更需要处理?导致308行const wrp = this.get('DomComponents').getComponent();需要Editor.js扔。 我们是否应该等所有模块加载完毕再连接事件监听者?

回答(3)

tommedema• 2018年4月12日

我有一阵子没见过这个了。暂时关闭。

artf• 2018年3月17日

我们是否应该等所有模块都加载完再绑定事件听众?

嗯,那段代码是同步运行的,我觉得它帮不上忙

顺便说一句,我以前在工作环境中🤔从未遇到过这个问题

tommedema• 2018年3月17日

@artf这里很容易复现。试着像上面建议的那样反复运行。 这里有证据: ![无题-3](https://user-images.githubusercontent.com/331833/37559350-9d6e69f2-2a24-11e8-8b45-7c163b4043c0.gif) 我的环境: OSX 高峰塞拉 10.13.3 Node.js v9.2.1 最新强奸开发分支提交 #e6593e7ad9a 不知为何,'this.get('DomComponents'''' 在 'editor/model/Editor.js' 中应该返回第 308 行的封装器时,却返回了 null

相关问答

通过相似的问题讨论继续研究。

与此问题匹配的付费插件

根据问题关键词和标签相关性精选,助你更快交付。

查看全部插件

正在加载付费插件推荐……

免费方案

在以下平台查看开源 GrapesJS 插件: GitHub 或在我们的免费目录中快速搜索。

浏览免费插件 →
高级方案

高级插件提供支持、定期更新和生产就绪的功能——为你节省数天的集成工作。

浏览高级插件 →

相关教程

关于同一主题的深入指南。

全部教程 →

浏览插件分类

直接跳转到市场上的插件分类页面。