RStudio 查看器抛出错误
RStudio Viewer throws error
问题
某些版本的 RStudio 在我的 javascript 小部件的查看器窗格中抛出错误,而有些则不会。
代码
我创建了一个 htmlwidget for my googleway
包来绘制 Google 地图。
要重现此问题(如果确实是您系统上的问题),您只需 运行 此代码
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 窗格中,而在其他版本中则不会。
当我 "inspect" 查看器(右键单击 > 检查 > 控制台)时,出现错误
SyntaxError: Unexpected identifier 'i'. Expected either 'in' or 'of' in enumeration syntax.
链接到 javascript 内的 for
循环(参见屏幕截图和 source code)
今天早上我在导致错误的系统上升级了Rstudio,但它仍然报错。
以下两张截图显示了两台不同的Mac(都是运行ning OS Sierra)和Rstudio,示例为
- Rstudio v1.0.143 - 不工作
- Rstudio v1.0.136 - 工作
为什么有些版本的 RStudio 会抛出错误,而有些则不会?
@timelyportfolio 的建议有助于(再次!)找到解决方案。
我不相信这个问题纯粹是由于 Rstudio 造成的,或者还涉及其他因素,尤其是当小部件在旧版本上工作时,但现在我将把它作为解决方案。
行
中的let
for (let i = 0; i < data.calls.length; i++) {
并非所有浏览器都支持 ,因此将其更改为 var
适用于该行(以及所有使用 let
的行)。
我还使用 this method 在数组中查找值
data_.find(x => x.id === _id)
并非所有浏览器都支持,因此恢复为
function findById(source, id) {
for (var i = 0; i < source.length; i++) {
if (source[i].id === id) {
return source[i];
}
}
return;
}
似乎也解决了这个问题。
瞧瞧!
问题
某些版本的 RStudio 在我的 javascript 小部件的查看器窗格中抛出错误,而有些则不会。
代码
我创建了一个 htmlwidget for my googleway
包来绘制 Google 地图。
要重现此问题(如果确实是您系统上的问题),您只需 运行 此代码
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 窗格中,而在其他版本中则不会。
当我 "inspect" 查看器(右键单击 > 检查 > 控制台)时,出现错误
SyntaxError: Unexpected identifier 'i'. Expected either 'in' or 'of' in enumeration syntax.
链接到 javascript 内的 for
循环(参见屏幕截图和 source code)
今天早上我在导致错误的系统上升级了Rstudio,但它仍然报错。
以下两张截图显示了两台不同的Mac(都是运行ning OS Sierra)和Rstudio,示例为
- Rstudio v1.0.143 - 不工作
- Rstudio v1.0.136 - 工作
为什么有些版本的 RStudio 会抛出错误,而有些则不会?
@timelyportfolio 的建议有助于(再次!)找到解决方案。
我不相信这个问题纯粹是由于 Rstudio 造成的,或者还涉及其他因素,尤其是当小部件在旧版本上工作时,但现在我将把它作为解决方案。
行
中的let
for (let i = 0; i < data.calls.length; i++) {
并非所有浏览器都支持 ,因此将其更改为 var
适用于该行(以及所有使用 let
的行)。
我还使用 this method 在数组中查找值
data_.find(x => x.id === _id)
并非所有浏览器都支持,因此恢复为
function findById(source, id) {
for (var i = 0; i < source.length; i++) {
if (source[i].id === id) {
return source[i];
}
}
return;
}
似乎也解决了这个问题。
瞧瞧!