原子编辑器,atom-beautify插件错误:未捕获TypeError:无法读取null的属性'setScrollTop'

时间:2016-12-27 19:40:06

标签: javascript json atom-editor

我一直在使用Atom的原子美化插件很长一段时间,但从昨天开始,每当我尝试美化/保存我的C代码时,我都会收到错误:

Uncaught TypeError: Cannot read property 'setScrollTop' of null

截图如下:

enter image description here

有时我会遇到不同的错误:

enter image description here

此问题已在github存储库中多次报告(例如this one),目前尚无适当的解决方案。这就是我在这里寻求帮助的原因!我做了一些研究,它似乎是一个Javascript / JSON问题,因此标签。很抱歉,如果它们不相关,作为C程序员,我对JavaScript和JSON知之甚少。

我在mac OS X elcappitan上使用原子编辑器,但其他人也在Windows和Linux上报告了同样的问题。如果您能帮助我理解为什么会发生这种情况以及如何解决这个问题,我将不胜感激。

2 个答案:

答案 0 :(得分:1)

简单答案:

  • 现在使用不同的包;

  • 除非您精通JavaScript / CoffeeScript,否则我不会更改任何包内容。

说明:

JSON是一个直接的键:值配对系统,例如{"name":"Donald Duck"}

这个错误在JavaScript中(显然),因为Atom使用CoffeeScript,JavaScript,CSS和HTML来制作他们的编辑器 - 而且由于你使用的是插件,我很确定插件制作者设置了其中一个值在尝试查找依赖的HTML元素时无意中null

所以 - 该插件正在寻找一个不存在的HTML元素(通过CoffeeScript [JavaScript]),但可以手动修复(如果你能说一口咖啡)。

此问题也出现在Brackets中,唯一的解决方案是使用完全不同的包。

答案 1 :(得分:0)

看起来view?.setScrollTop无法处理和未知值,我会提交拉取请求。

这些是导致问题的原因:

setScrollTop = (editor, value) ->
  view = atom.views.getView(editor)
  view ?.setScrollTop value

这是可能的解决方案:

setScrollTop = (editor, value) ->
  view = atom.views.getView(editor)
  view ?.setScrollTop value ?0