1

在尝试使用(仅)更新的标头信息(即博客类别)重新构建旧的.Rmd文件时,我收到此错误:

错误:找不到 html_dependency 的路径:C:/Users/Username/Documents/R/win-library/3.4/threejs/htmlwidgets/lib/threejs-83

相同的.Rmd文件,在现在更新 header-info 之前,几个月前成功生成了 html-content,没有任何问题。我认为,更新后的blogdown包无法找到依赖库,即three.js v83 vs three.js v85

如果这是问题所在,如果有人能建议我需要更新哪个文件来解决这个问题,我将不胜感激。下面的快照显示了错误消息,以及所需库的 Windows 文件位置。

在此处输入图像描述

4

1 回答 1

3

事实证明,您缓存了生成 HTML 小部件的代码块。缓存 HTML 小部件时,需要注意 HTML 依赖项的版本。如果你缓存了一个widget,基本上下次不会再创建它,而是直接从缓存数据库中加载。以后不会知道外界有什么变化,比如某个JS库的更新。当它从缓存中加载时,它仍然会使用上次存储的所有路径。在您的情况下,threejs-83已更改为threejs-85,但您的缓存小部件不知道它,并且仍在寻找threejs-83(因此出现错误)。

一般来说,我不建议您缓存 HTML 小部件,因为blogdown的其他缓存机制应该足够快以在本地构建网站,而且缓存 HTML 小部件可能会很棘手。

于 2017-11-15T15:08:24.303 回答