【发布时间】:2017-09-16 08:37:06
【问题描述】:
问题
某些版本的 RStudio 在我的 javascript 小部件的查看器窗格中引发错误,而有些则不会。
代码
我为我的googleway 包创建了一个htmlwidget,用于绘制谷歌地图。
要重现此问题(如果确实是您的系统上的问题),您只需运行此代码
devtools::install_github("SymbolixAU/googleway")
library(googleway)
google_map(key = '') ## you don't need a key to see the error
但如果您想查看地图,则需要Google Maps API key
说明
我遇到的问题是,在某些版本的 Rstudio 上,地图显示在 Viewer 窗格中,而在其他版本中则没有。
当我“检查”查看器(右键单击 > 检查 > 控制台)时,出现错误
SyntaxError:意外的标识符“i”。枚举语法中应为“in”或“of”。
哪个链接到 javascript 内的 for 循环(请参阅屏幕截图和 source code)
今天早上我在导致错误的系统上升级了 Rstudio,但它仍然给出错误。
以下两个屏幕截图显示了两个不同的 Mac(均运行 OS Sierra)与 Rstudio,并带有示例
- Rstudio v1.0.143 - 不工作
- Rstudio v1.0.136 - 工作
为什么有些版本的 RStudio 会抛出错误,而有些则不会?
【问题讨论】:
-
我投票决定将此问题作为题外话结束,因为在 RStudio 支持频道上询问它可能更好。
-
不确定,但
let是 ES2015,所以旧版浏览器不知道如何使用它。你可以试试旧的var。 -
@timelyportfolio - 这可能与它有关 - 更改为
var“修复”该问题,但随后停在另一个:data.find(x => x.id == _id),我怀疑这也会导致类似的问题:stackoverflow.com/a/35398031/5977215 -
@timelyportfolio - 我认为你已经一针见血了;将
let更改为var,并将.find(x => ...)更改为更原始的循环已经解决了这个问题! -
但是,我仍然不确定为什么
let和.find()在旧版本的 Rstudio 中工作...